1
0
Fork 0
mirror of https://github.com/pygos/build.git synced 2024-11-10 21:57:10 +01:00
Commit graph

232 commits

Author SHA1 Message Date
David Oberhollenzer
5bea71e0a2 Remove useless and broken dhcpcd hooks
We don't need some of those hooks anyway, and some others are generated
based on tools we have installed on the build system, so we would need
a workaround anyway if we needed them.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-18 00:47:50 +02:00
David Oberhollenzer
8c2af75243 Bump bash-completion version, fix upstream URL
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-17 23:14:51 +02:00
David Oberhollenzer
7204b9dd75 Cleanup: strip executables in mk.sh
Automagically strip all executables (recursively for subdirectories in lib
and bin) inside the mk.sh build loop.

This removes the necessity in the build scripts to strip the files. This also
allows us to remove the error prone install-strip target from the build
scripts.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-17 20:22:10 +02:00
David Oberhollenzer
3d30afef75 Remove dev deploy split
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-17 20:22:10 +02:00
David Oberhollenzer
90b2586ea4 Restructure assembly of root filesystem image
Every package now has or generates a rootfs_files.txt containing a list
of files that should be packed into the rootfs, their permissions and
their owner.

This gives us fine grained controll over the owners and permissions of the
rootfs files (by generating a squashfs pseudo file).

In subsequent steps, this allows us to remove the deploy/devdeploy split and
actually simplifiy most of the build scripts.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-17 20:22:10 +02:00
David Oberhollenzer
878f4360f1 Bump init version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-17 20:22:02 +02:00
David Oberhollenzer
5dd03bd5fb Add raw service list to enable for init package
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-17 01:45:27 +02:00
David Oberhollenzer
8c76110586 Fix unbound directory setup
- Move root.key into /etc/unbound directory
 - Remove pid file from config, it is baked into the configure options
 - Make sure unbound does not try to chroot anywhere

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-04 16:27:10 +02:00
David Oberhollenzer
750d53d82d Generate trust anchor file for unbound
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-06-04 09:09:15 +02:00
David Oberhollenzer
5128a00400 Fix raspberry pi 3 kernel check_update version comparison
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
c0027fbaf7 Bump raspberry pi 3 kernel version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
8052eaf596 Bump raspberry pi 3 firmware version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
17d31e5f70 Bump procps-ng version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
bb5445a3e1 Bump libidn2 version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
3e22e24004 Bump libbsd version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
3f0c67b4cd Bump BusyBox version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
2a1519ea2c Bump nano version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-25 18:36:59 +02:00
David Oberhollenzer
2d57db89d9 Simplify unbound build
- Remove libevent dependency
 - Since we only have a single config file anyway,
   use it as main unbound.conf
 - We also need libbsd as build dependency
2018-05-25 18:36:36 +02:00
David Oberhollenzer
86120862c5 Add some usefull bash aliases
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-19 23:05:30 +02:00
David Oberhollenzer
d5c8fce58b Add helper function to fixup libtool files
When "libdir" is not the final path where we install the library,
libtool will mess up the relinking process and prepend the global
library directories to the linker search path.

If we fix the libdir path, libtool will insert it into the rpath
in the binary, which is also pretty bonkers.

Maybe, there is a way to do this correctly, but the various GNU
mailing lists, Debian wiki, etc.. could not provide a better
alternative than patching up libtool scripts.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-19 23:05:30 +02:00
David Oberhollenzer
e97e355b64 Explicitly specify library search path when building cross binutils
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-19 00:31:01 +02:00
David Oberhollenzer
d9e5af3644 mainline kernel: only check for newer LTS versions
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-14 18:31:24 +02:00
David Oberhollenzer
5e2a443ae5 Minor util-linux build script fixes
- Remove extra back slash
 - The good old "install uses build systems strip tool and it doesn't know
   what to do with ARM binaries"

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-14 00:04:32 +02:00
David Oberhollenzer
e82eda5bef bash: don't link against the build systems readline library
If we tell bash to used the installed readline library, it defaults
to adding -L/lib for the readline and history library prefixes.

This prepends the local systems search path to the toolchain search
path and makes bash build break on some systems.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-14 00:04:32 +02:00
David Oberhollenzer
8d9e25b8d0 Bump nftables version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-11 23:30:07 +02:00
David Oberhollenzer
c6ae50eb40 Add helpers for override behaviour based shell inclusion
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-10 16:01:53 +02:00
David Oberhollenzer
e8371806cd Bump procps-ng version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-10 12:21:33 +02:00
David Oberhollenzer
a21ae85b50 Bump gcc version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
02f73edff8 Bump libnftnl version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
191b5f82d8 Bump sqlite3 version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
b110b7d0e1 Bump btrfs-progs version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
645881d071 Bump dhcpcd version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
7009e9554a Bump ethtool version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
c94b7320dd Bump nano version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
74ea27e37c Bump nftables version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
ab2492ea6a Bump shadow version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
f464aeb721 Bump unbound version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
dcee71aa34 Bump file version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
6746f5c033 Bump XZ version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
b1bdce20a9 Add automatic update chacking script
Crunch project websites and try to find the latest version for each
package without having to do the work manually.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 15:01:23 +02:00
David Oberhollenzer
acd2a1f57f Fix dhcpcd service
First of all, fix the dependency name in the per-interface service file.

Second, we allow the master services daemonize itself and change the target
to wait. This way, we block init until we are sure the dhcpcd master
is running. Otherwise we have a race condition if init gets scheduled
for some reason and immediately starts the dhcpcd interface daemon that
cannot see the master and decides that *it* is the msater now.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-08 14:59:13 +02:00
David Oberhollenzer
5388c0f925 Cleanup file override behaviour
Look for board specific product files in product/$product/$board/

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-06 00:21:09 +02:00
David Oberhollenzer
b0a3baf8bb Add dhcpcd configuration
- Service file for dhcpcd master service
 - Service template file for interfaces
 - Service symlink for each configured interface
 - Get DHCP address on raspberry pi 3 for ethernet port

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-05 21:53:34 +02:00
David Oberhollenzer
e65f40e01f Add network configuration
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-05 18:27:57 +02:00
David Oberhollenzer
387281fae4 Add configuration for deterministic network interface names
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-05 18:27:57 +02:00
David Oberhollenzer
1389c74f95 Add pygos specific init setup to init package
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-05 18:27:57 +02:00
David Oberhollenzer
390c1e6a15 Bump init version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-05-05 18:27:57 +02:00
David Oberhollenzer
b7de7a0ccb cleanup: remove w flag from all read only files
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-20 13:24:36 +02:00
David Oberhollenzer
2df0ef2945 cleanup: remove /opt and /srv from default filesystem
Let packages decide if they want to install something to /opt or /srv,
but there is no reason to have empty directories by default in the read
only root filesystem.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-20 13:24:30 +02:00
David Oberhollenzer
7f5f64978d cleanup: restructure user directories
Instead of having an overlay mounted /root in the root filesystem,
move it to the other user directories, i.e. /usr/root.

We then overlay mount the entire /usr directory. This still allows
us to mount /usr from somewhere else if we wish, but cleans
up/simplifies the filesystem for now and implements some default
management of general user directories.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-20 13:24:24 +02:00
David Oberhollenzer
db05815d17 Bump main line kernel version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-16 23:26:48 +02:00
David Oberhollenzer
76cd516b5f Bump init version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-14 23:04:31 +02:00
David Oberhollenzer
8239578deb Move filesystem setup to init
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-07 00:52:21 +02:00
David Oberhollenzer
08c7fe9b4f Cleanup: remove useless shadow-util programs
- vigr and vipw. We don't have vi installed.
 - chsh. We only have one shell installed.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-06 14:41:20 +02:00
David Oberhollenzer
9d75cc8400 Cleanup: move libexec directory into /lib
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-06 01:03:29 +02:00
David Oberhollenzer
66be5567f9 Fix: don't remove magic
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-06 00:48:56 +02:00
David Oberhollenzer
60efe6d501 Bump procps-ng version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 23:06:54 +02:00
David Oberhollenzer
14c8a79268 Bump iproute2 version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 21:57:15 +02:00
David Oberhollenzer
61393153d4 Bump OpenSSH version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 21:50:31 +02:00
David Oberhollenzer
06cf2e05cf Bump btrfs-progs version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 21:43:41 +02:00
David Oberhollenzer
3363827c78 Bump util-linux version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 21:37:07 +02:00
David Oberhollenzer
35558aa27d Bump busybox version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
f415a39e96 Bump nftables version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
f1759dffed Bump unbound version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
2121f940c9 Bump OpenSSL version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
89c3c31702 Bump libunistring version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
7136fcda6c Bump sqlite3 version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
966f16f775 Bump dhcpcd version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
e69717f6b9 Bump dnsmasq version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
fe349bba1f Bump less version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
16ce4d5732 Bump gawk version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
e708ec7192 Bump sed version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
95ec1be661 Bump nano version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
d049b3a9d1 Bump musl version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
72512d6bac Bump init version
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-04-05 20:30:20 +02:00
David Oberhollenzer
3907b48c1f Add eudev package
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-03-24 21:14:29 +01:00
David Oberhollenzer
d458890335 Add dhcpcd package
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-03-24 21:14:29 +01:00
David Oberhollenzer
f5a62aef6a Replace OpenRC with custom init system
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-03-24 18:28:29 +01:00
David Oberhollenzer
94cc2d2c46 Implement board/product config schema
- build needs a pair of product and board name
 - some products can only be built for some boards
 - Config files in product/<name> directory override those in board/<name>
 - For some config files, like LDPATH or ROOTFS, the files are merged
 - product/common provides defaults

Add default config for various services:
 - Add default config for unbound
 - Add default config for dnsmasq

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-03-24 18:28:29 +01:00
David Oberhollenzer
372fc76053 Bump busybox version to 1.28.1
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-03-24 18:28:29 +01:00
David Oberhollenzer
80353cf9a3 Use xz compression for root squashfs
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-03-24 18:28:29 +01:00
David Oberhollenzer
2fbfbbe059 Fix gcc child package symlinks
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-03-24 18:28:29 +01:00
David Oberhollenzer
96966bf73b Minor cleanup
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-24 22:45:00 +01:00
David Oberhollenzer
b0e2497a99 Greatly simplify initrd setup
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-24 22:45:00 +01:00
David Oberhollenzer
4e9e0e26f1 Fix local version name in linux_modules
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-24 22:44:59 +01:00
David Oberhollenzer
fc0b587074 Cleanup deployed files and directories
- Remove empty directories installed to / by install targets
 - Make sure we strip everything
 - Remove charset.alias file installed by every pacakge, add
   centralized version to rootfs package

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-24 22:44:59 +01:00
David Oberhollenzer
2147fbb3b2 Remove "-dev" prefix for development files
Instead of adding a prefix, move development files to a different
deploy directory.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-17 03:02:16 +01:00
David Oberhollenzer
93ade05725 Remove tc- prefix from musl and linux header packages
They no longer contain anything specific to the toolchain
build process.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-17 03:02:16 +01:00
David Oberhollenzer
4a919ad209 Merge bbstatic busybox configurations
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-17 03:02:16 +01:00
David Oberhollenzer
fc278364e5 Cleanup package command arguments
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-17 03:02:16 +01:00
David Oberhollenzer
05ae80634c Don't keep build directory
Use $PKGBUILDDIR for building packages. Delete it again after
the deploy is done. If the build fails, the script aborts and it
is kept. If the build and deploy pass, there is no reason to keep
it around.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-17 03:02:15 +01:00
David Oberhollenzer
30aa5ce395 Use regular packaging for toolchain packages if applicable
- Store musl & kernel headers in dev packages
 - Store musl dynamic headers in regular package,
   shared libs in dev package
 - Carefully seperate headers and libaries installed by second GCC
   into packages
 - libgcc_files.txt no longer needed

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-17 03:02:15 +01:00
David Oberhollenzer
1636fc8aac Merge management of regular and toolchain packages
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 23:47:54 +01:00
David Oberhollenzer
dbe75332e5 Take care of libtool archives in split_dev_deploy
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 16:16:52 +01:00
David Oberhollenzer
fa95db618e Add utility function for manually stripping files
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 16:16:52 +01:00
David Oberhollenzer
84076865ba Bump rpi3 firmware and kernel versions
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 13:56:16 +01:00
David Oberhollenzer
59f6ab6242 Port release script fixes from alix to rpi3
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 13:56:16 +01:00
David Oberhollenzer
204603dce1 Versioning support for Raspberry Pi
- Use shipped device tree binaries instead of our own
 - Install kernel + rootfs to $OS_RELEASE subdirectory

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 13:56:16 +01:00
David Oberhollenzer
9640f87899 Release alix: remove debug prints, check if image file exists
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 13:56:16 +01:00
David Oberhollenzer
5dd2790a67 Add os-name & release
Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
2018-02-15 13:56:16 +01:00