09/02/2020: This week in KISS (#10)
More package manager goodies this week.
ARCHIVED PAGE More package manager goodies this week.09/02/2020: This week in KISS (#10)
It is now possible to hook into specific "events" in the package manager with a script. Right now only pre-build
and post-build
are supported though I expect to see this list expand as users need them.
The KISS_HOOK
environment variable takes the path to a shellscript which is then executed with three additional environment variables defined. Rather than needing a separate script per event, a single script is all that is required.
The following three environment variables are defined:
$PKG
: The name of the package.$TYPE
: The event type (valid: pre-build, post-build).$DEST
: The path to where 'make install', etc will put the package.A simple script to set different CFLAGS
for specific flags could look as follows.
#!/bin/sh
case $TYPE in
pre-build)
case $PKG in
zlib) export CFLAGS="-Os -static" ;;
curl) export CFLAGS="-O3" ;;
esac
;;
post-build)
# post-build code here.
;;
esac
This paves the way for finer tuning of compilation settings for LTO and more aggressive compiler options. See: /r/kisslinux post
/etc/
handlingThe package manager now performs a 3-way "handshake" to determine how it should handle the installation of files in /etc
. In short, when a file cannot be overwritten due to user modifications it is installed as $file.new
.
This is very similar to how Arch Linux handles /etc
and it's a really nice way of doing things.
A new opt-in feature has been added which will open a scrollable diff
of every modified file for a system update. This was implemented to allow users to easily get a deeper insight as to what will happen during updates.
The repositories themselves aregit
repositories so this is simply a git diff
call post-fetch.
To enable this feature set KISS_AUDIT
to 1
.
Our GCC builds enable PIE by default though this wasn't applied when compiling statically. A patch was submitted by Owen Rafferty which fixes this issue.
To revert to the previous behavior the following $CFLAGS
can be used -fno-pie -no-pie
.
Our default non-root Xorg configuration required the user be in the input
group to function correctly. This is no longer a requirement and you may now remove yourself from the group.
Instead, our Xorg is now setgid
input
which limits the permissions to /dev/input
solely to Xorg. Any applications spawned under Xorg will not be able to read /dev/input
.
This is a nicer and more secure default configuration.
These two tar
implementations are now supported in the package manager further reducing the dependence on busybox
. I have found these to be faster than busybox's tar
for those large source tarballs.
f1db1cf
cryptsetup: bump to 5.67.0a9b34e1
libinput: bump to 1.15.1f86714c
busybox: Fix mdev.run. Closes #140eb4160f
opendoas: bump to 6.6.10751732
glib: bump to 2.63.52679adc
libarchive: new package at 3.4.187629a8
busybox: fix checksums2a1127c
kiss: bump to 1.2.0b9df4fa
kiss-utils: bump to 1.2.06447193
baseinit: bump to 0.4696613a
cmake: bump to 3.16.4287bee5
kiss: bump to 1.2.1b476d52
kiss-utils: bump to 1.2.12969c8c
kiss: bump to 1.2.2dc2ee5c
kiss-utils: bump to 1.2.2e486531
nodejs: bump to 13.8.0ba246df
xorg-server: Run setgid. input group no longer needed per-user.ef7f7fc
libinput: Remove post-install messagee951a27
vim: don't link to util-linux662f59d
kiss: bump to 1.3.0891344b
kiss-utils: bump to 1.3.05611459
baseinit: bump to 0.4.11316592
libSM: Remove util-linux dependency1fa3519
vim: remove unused flagd4c1ea6
glib: Remove util-linux dependencyccf9ffb
gdk-pixbuf: Don't build tests84e7d60
gtk+3: Don't install tests5901fbf
python: remove util-linux dependencybbec1d1
kiss: bump to 1.3.15ea31f6
kiss-utils: bump to 1.3.13a38408
nss: bump to 3.5066c8f14
meta: Move non-xorg related packages out of xorg/3d47a77
xorg: Drop www. from sources99d840e
eiwd: move to extra5ea359f
gdk-pixbuf: Remove shared-mime-info dependencydcacfe9
gtk+3: Remove shared-mime-info dependency7621366
gtk+2: remove shared-mime-info dependency8c7acc6
e2fsprogs: Remove util-linux dependency96ad6fb
gcc: bump version for libgomp and static-pie fixes.cbbbf9b
kiss: bump to 1.4.01dc1377
kiss-utils: bump to 1.4.0b2a5d52
json-c: fix depends. Closes #143 by @artemkobets0cbdf32
xf86-video-ati: Fix rootless xorge67a209
extra-cmake-modules: bump to 5.67.06e64fb7
kiss: bump to 1.4.1cfbe193
kiss-utils: bump to 1.4.11a9ada8
opendoas: added new doas.conf for latest kisseecc3f2
grub: Fix build after GCC changes