root@LEDE:~/etckeeper.branchable.com# make
sed -i~ "s/Version:./Version: $(perl -e '$_=<>;m/((.?)(-.)?)/;print $1;'<debian/changelog)/" etckeeper.spec
/bin/sh: perl: not found
rm -f etckeeper.spec~
sed -i~ "s/Version:./Version: $(perl -e '$=<>;m/((.?)(-.)?)/;print $1;' <debian/changelog)\"/" etckeeper
/bin/sh: perl: not found
rm -f etckeeper~
python ./etckeeper-bzr/init.py build || echo " bzr support not built"
Traceback (most recent call last):
File "./etckeeper-bzr/init.py", line 6, in
from bzrlib.errors import BzrError
ImportError: No module named bzrlib.errors
bzr support not built
python ./etckeeper-dnf/etckeeper.py build || echo " DNF support not built"
Traceback (most recent call last):
File "./etckeeper-dnf/etckeeper.py", line 10, in
from dnfpluginscore import logger
ImportError: No module named dnfpluginscore
DNF support not built
root@LEDE:~/etckeeper.branchable.com#
root@LEDE:~/etckeeper.branchable.com#
root@LEDE:~/etckeeper.branchable.com# make install
sed -i~ "s/Version:.*/Version: $(perl -e '$=<>;m/((.?)(-.)?)/;print $1;' <debian/changelog)\"/" etckeeper
/bin/sh: perl: not found
rm -f etckeeper~
mkdir -p /etc/etckeeper/ /var/cache/etckeeper/
cp -R .d /etc/etckeeper/
install daily /etc/etckeeper/daily
make: install: Command not found
make: ** [Makefile:29: install] Error 127
root@LEDE:~/etckeeper.branchable.com#
I was just thinking that it would be nice to have etckeeper operating on my home networking gear similar to how I use it on my PCs. Since they all run either OpenWRT or Tomato/Merlin, a package that interfaced with the opkg management system would be ideal. Specifically it's the fact that the directory it would need to monitor would be /opt/etc and not /etc that I'm not quite sure how to go about implementing.
Has there been any movement on this process? I'd be happy to put my shoulder to the wheel on it if someone with more familiarity with the codebase could describe the tasks involved. Failing that I'd be happy to test anyone else's attempts. Huge fan of the project, thanks so much for all the work that's been put in on it to date.
I know this is an old topic, but I too am interested in running etckeeper on OpenWRT.
For the record, OpenWRT has recently switched from opkg to Alpine's apk for package management, and etckeeper already has some support for apk.
I'm currently trying out etckeeper on my routers, and it actually seems to work pretty fine with some minor fixes!
@Joey, I have a "pull request" waiting for you in a form of a branch on a mirror repo here.
The changes I made are split into small commits and they do two things:
expand apk support: current version of etckeeper doesn't come with a pre/post-intall hook for apk, so I added one. I've checked that it works on OpenWRT, and it should work just fine on Alpine as well, since I made it following information on Alpine's wiki
modify some of the scripts to add simple fallbacks for commands not available in OpenWRT by default in order to avoid unnecessary package dependencies (namely, hostname, whoami and getent)
OpenWRT comes with Busybox and aims to be minimal, so some commands are unavailable (at least by default) or work differently. In addition to ones mentioned above, there were still some commands for which I couldn't find simple shell replacements (like stat), or which don't support all of the arguments supported by their GNU counterparts (like find), so I'm tagging these packages as dependencies of the etckeeper package I intend to contribute to OpenWRT.
If my changes are accepted and a new etckeeper version tagged, the OpenWRT package source wouldn't need to come with any extra files or patches and could be reduced to just a single Makefile.
python is NOT installed by default nither perl
but git is present
root@LEDE:~/etckeeper.branchable.com# make sed -i~ "s/Version:./Version: $(perl -e '$_=<>;m/((.?)(-.)?)/;print $1;'<debian/changelog)/" etckeeper.spec /bin/sh: perl: not found rm -f etckeeper.spec~ sed -i~ "s/Version:./Version: $(perl -e '$=<>;m/((.?)(-.)?)/;print $1;' <debian/changelog)\"/" etckeeper /bin/sh: perl: not found rm -f etckeeper~ python ./etckeeper-bzr/init.py build || echo " bzr support not built" Traceback (most recent call last): File "./etckeeper-bzr/init.py", line 6, in from bzrlib.errors import BzrError ImportError: No module named bzrlib.errors bzr support not built python ./etckeeper-dnf/etckeeper.py build || echo " DNF support not built" Traceback (most recent call last): File "./etckeeper-dnf/etckeeper.py", line 10, in from dnfpluginscore import logger ImportError: No module named dnfpluginscore DNF support not built root@LEDE:~/etckeeper.branchable.com# root@LEDE:~/etckeeper.branchable.com# root@LEDE:~/etckeeper.branchable.com# make install sed -i~ "s/Version:.*/Version: $(perl -e '$=<>;m/((.?)(-.)?)/;print $1;' <debian/changelog)\"/" etckeeper /bin/sh: perl: not found rm -f etckeeper~ mkdir -p /etc/etckeeper/ /var/cache/etckeeper/ cp -R .d /etc/etckeeper/ install daily /etc/etckeeper/daily make: install: Command not found make: ** [Makefile:29: install] Error 127 root@LEDE:~/etckeeper.branchable.com#
I was just thinking that it would be nice to have etckeeper operating on my home networking gear similar to how I use it on my PCs. Since they all run either OpenWRT or Tomato/Merlin, a package that interfaced with the opkg management system would be ideal. Specifically it's the fact that the directory it would need to monitor would be /opt/etc and not /etc that I'm not quite sure how to go about implementing.
Has there been any movement on this process? I'd be happy to put my shoulder to the wheel on it if someone with more familiarity with the codebase could describe the tasks involved. Failing that I'd be happy to test anyone else's attempts. Huge fan of the project, thanks so much for all the work that's been put in on it to date.
I know this is an old topic, but I too am interested in running etckeeper on OpenWRT.
For the record, OpenWRT has recently switched from opkg to Alpine's apk for package management, and etckeeper already has some support for apk. I'm currently trying out etckeeper on my routers, and it actually seems to work pretty fine with some minor fixes! @Joey, I have a "pull request" waiting for you in a form of a branch on a mirror repo here.
The changes I made are split into small commits and they do two things:
apk, so I added one. I've checked that it works on OpenWRT, and it should work just fine on Alpine as well, since I made it following information on Alpine's wikihostname,whoamiandgetent)OpenWRT comes with Busybox and aims to be minimal, so some commands are unavailable (at least by default) or work differently. In addition to ones mentioned above, there were still some commands for which I couldn't find simple shell replacements (like
stat), or which don't support all of the arguments supported by their GNU counterparts (likefind), so I'm tagging these packages as dependencies of the etckeeper package I intend to contribute to OpenWRT.If my changes are accepted and a new etckeeper version tagged, the OpenWRT package source wouldn't need to come with any extra files or patches and could be reduced to just a single Makefile.