Etckeeper: requesting help with building an OpenWrt package

Hello all,

I've been using OpenWRT for over a year now, and absolutely love the capability and flexibility it provides. On all my other *nix systems, I use etckeeper and git to provide version management of /etc, and would like to do the same on my OpenWRT systems.

I've managed to get etckeeper installed manually on an emulated instance of OpenWRT, and successfully version controlled the /etc folder on my git server. I've posted detailed to GitHub on how to manually install etckeeper.

The post reference above also contains everything I've pulled together thus far in an attempt to create an OpenWRT package for etckeeper. I've followed the documentation available on OpenWRT's website for building packages, including helloworld, but still cannot get it to work.

I realize that the package is incomplete, but when I attempt to build I get the following error:

Makefile:19: /package.mk: No such file or directory
make[1]: *** No rule to make target '/package.mk'.  Stop.

Every other package Makefile I've browsed on GitHub contains the same line [19] include $(INCLUDE_DIR)/package.mk, so I'm not sure what the issue is.

I was hoping that this would be fairly straightforward since etckeeper (at least to use git) is just shell scripts with no compilation necessary. Unfortunately I'm not sure how to go forward.

Any and all help would be greatly appreciated.

Thanks,

1 Like

You'll need a skeletal package Makefile. Since it's all scripts, just put them into the your_package/files/ directory and say where to install them.

Not that this is the "best" example, but https://github.com/openwrt/packages/blob/openwrt-18.06/net/vpnc-scripts/Makefile is a one template for how to install files.

https://openwrt.org/docs/guide-developer/packages can provide some more insight. The build system makefiles and scripts are generally found in path/to/openwrt/include/

(As a side note, I manually manage /etc/ using git, though it is something of a large package.)