7 Commits
0.13 ... 0.13.2

Author SHA1 Message Date
f1368b1aa7 fix crash in DE 2022-01-21 15:59:08 +02:00
51ef407331 0.13.1 2022-01-20 19:24:07 -06:00
33d9fd2da3 66: remove pointless fdmove in pacman-init
This was originally copied over from the s6 oneshot script. The fdmove
line is not needed and serves no purpose. Just remove it.
2022-01-20 19:20:45 -06:00
56f1455c77 makefile: add alpm hooks to install_s6/66 2022-01-20 19:20:45 -06:00
5b35f20375 liveservices-hook: Add 66-specific setup
Signed-off-by: strajder <strajder@artixlinux.org>
2022-01-20 19:20:45 -06:00
730908dc51 add alpm-hook for live services
Only s6 and suite66 actually need to use this.
2022-01-20 19:20:45 -06:00
9672ce5b46 0.13 2022-01-21 00:50:37 +02:00
5 changed files with 135 additions and 4 deletions

View File

@@ -1,4 +1,4 @@
VERSION = 0.12.3
VERSION = 0.13.1
PKG = live-services
TOOLS = artools
@@ -11,10 +11,17 @@ DATADIR = $(PREFIX)/share
SYSUSERSDIR = $(PREFIX)/lib/sysusers.d
LIVEUSER ?= artix
HOOKSDIR = $(DATADIR)/libalpm/hooks
SCRIPTSDIR = $(DATADIR)/libalpm/scripts
FMODE = -m0644
DMODE = -dm0755
BMODE = -m0755
ALPMSCRIPTS = $(wildcard libalpm/scripts/*)
ALPMHOOKS = $(wildcard libalpm/hooks/*)
BIN = \
bin/artix-live
@@ -98,6 +105,12 @@ install_base:
install $(DMODE) $(DESTDIR)$(DATADIR)/$(TOOLS)
install $(FMODE) $(SHARED) $(DESTDIR)$(DATADIR)/$(TOOLS)
install_alpm:
install $(DMODE) $(DESTDIR)$(SCRIPTSDIR)
install $(DMODE) $(DESTDIR)$(HOOKSDIR)
install $(BMODE) $(ALPMSCRIPTS) $(DESTDIR)$(SCRIPTSDIR)
install $(FMODE) $(ALPMHOOKS) $(DESTDIR)$(HOOKSDIR)
install_rc:
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/init.d
install $(BMODE) $(RC) $(DESTDIR)$(SYSCONFDIR)/init.d
@@ -112,7 +125,7 @@ install_runit:
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/runit/sv/pacman-init
install $(BMODE) $(RUNIT_SV) $(DESTDIR)$(SYSCONFDIR)/runit/sv/pacman-init/run
install_s6:
install_s6: install_alpm
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/s6/sv
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/s6/sv/pacman-init
@@ -121,7 +134,7 @@ install_s6:
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/s6/sv/artix-live
install $(BMODE) $(S6_LIVE) $(DESTDIR)$(SYSCONFDIR)/s6/sv/artix-live/
install_66:
install_66: install_alpm
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/66/service
install $(FMODE) $(66_LIVE) $(DESTDIR)$(SYSCONFDIR)/66/service/artix-live

View File

@@ -9,6 +9,5 @@
@execute = (
foreground { mkdir -p /etc/pacman.d/gnupg }
foreground { mount -t tmpfs -o size=10M,mode=0755 tmpfs /etc/pacman.d/gnupg }
fdmove -c 2 1
foreground { pacman-key --init }
foreground { pacman-key --populate artix } )

View File

@@ -0,0 +1,12 @@
[Trigger]
Operation = Install
Operation = Upgrade
Type = Package
Target = artix-live-s6
Target = artix-live-suite66
[Action]
Description = Enabling live services ...
When = PostTransaction
Exec = /usr/share/libalpm/scripts/liveservices-hook enable
NeedsTargets

View File

@@ -0,0 +1,11 @@
[Trigger]
Operation = Remove
Type = Package
Target = artix-live-s6
Target = artix-live-suite66
[Action]
Description = Disabling live services ...
When = PreTransaction
Exec = /usr/share/libalpm/scripts/liveservices-hook disable
NeedsTargets

View File

@@ -0,0 +1,96 @@
#!/bin/sh -e
# Only needed for s6 and suite66.
s6_enable_live_services(){
if [ -d /etc/s6/sv/gdm/dependencies.d ]; then
touch /etc/s6/sv/gdm/dependencies.d/artix-live
fi
if [ -d /etc/s6/sv/lightdm-srv/dependencies.d ]; then
touch /etc/s6/sv/lightdm-srv/dependencies.d/artix-live
fi
if [ -d /etc/s6/sv/sddm/dependencies.d ]; then
touch /etc/s6/sv/sddm/dependencies.d/artix-live
fi
# TODO: instead touch files under dependencies.d when s6-scripts updates
echo "artix-live" >> /etc/s6/sv/default/contents
echo "pacman-init" >> /etc/s6/sv/default/contents
}
s6_disable_live_services(){
# TODO: delete files under dependencies.d when s6-scripts updates
sed -i '/artix-live/d' /etc/s6/sv/default/contents
sed -i '/pacman-init/d' /etc/s6/sv/default/contents
rm -f /etc/s6/sv/gdm/dependencies.d/artix-live
rm -f /etc/s6/sv/lightdm-srv/dependencies.d/artix-live
rm -f /etc/s6/sv/sddm/dependencies.d/artix-live
}
suite66_enable_live_services(){
66-tree -ncE default
66-enable -t default artix-live pacman-init
if [ -f /usr/bin/gdm ]; then
66-disable -t default logind gdm
sed -i -E 's#@depends\s*=\s*\(\s*([^)]+)\s*\)#@depends = ( '\
'\1artix-live pacman-init )#' /etc/66/service/gdm
66-enable -t default logind gdm
elif [ -f /usr/bin/lightdm ]; then
66-disable -t default logind lightdm
sed -i -E 's#@depends\s*=\s*\(\s*([^)]+)\s*\)#@depends = ( '\
'\1artix-live pacman-init )#' /etc/66/service/lightdm
66-enable -t default logind lightdm
elif [ -f /usr/bin/sddm ]; then
66-disable -t default logind sddm
sed -i -E 's#@depends\s*=\s*\(\s*([^)]+)\s*\)#@depends = ( '\
'\1artix-live pacman-init )#' /etc/66/service/sddm
66-enable -t default logind sddm
fi
66-enable -t boot -F boot@system
}
suite66_disable_live_services(){
66-disable -t default artix-live pacman-init
if [ -f /usr/bin/gdm ]; then
66-disable -t default logind gdm
sed -i -E 's# artix-live pacman-init##' /etc/66/service/gdm
66-enable -t default logind gdm
elif [ -f /usr/bin/lightdm ]; then
66-disable -t default logind lightdm
sed -i -E 's# artix-live pacman-init##' /etc/66/service/lightdm
66-enable -t default logind lightdm
elif [ -f /usr/bin/sddm ]; then
66-disable -t default logind sddm
sed -i -E 's# artix-live pacman-init##' /etc/66/service/sddm
66-enable -t default logind sddm
fi
66-enable -t boot -F boot@system
}
enable_live_services() {
if [ -f /usr/bin/s6-init ]; then
s6_enable_live_services
fi
if [ -f /usr/bin/suite66-init ]; then
suite66_enable_live_services
fi
}
disable_live_services() {
if [ -f /usr/bin/s6-init ]; then
s6_disable_live_services
fi
if [ -f /usr/bin/suite66-init ]; then
suite66_disable_live_services
fi
}
case "$1" in
enable) enable_live_services ;;
disable) disable_live_services ;;
*) echo >&2 " Invalid operation '$1'"; exit 1 ;;
esac