25 Commits

Author SHA1 Message Date
a28ed7f20d 0.13.4 2022-01-21 13:49:04 -06:00
4739509ac7 liveservices-hook: Merge broken sed arguments into single lines
Signed-off-by: strajder <strajder@artixlinux.org>
2022-01-21 20:40:59 +01:00
2d8d60c0bc fuck -e 2022-01-21 21:13:49 +02:00
04363a50bb makefile bump 2022-01-21 16:04:31 +02:00
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
9cf651405e 0.12.3 2022-01-20 19:55:32 +02:00
65c79b931c 0.12.2 2022-01-08 08:25:34 +07:00
19fae52dc0 0.12.1 2022-01-08 08:20:23 +07:00
1f62798998 dinit: use live.d for live services 2022-01-08 08:19:29 +07:00
231acc723b rc: use a display-manager provide 2022-01-04 18:04:25 +01:00
dafee38770 Update 'bin/desktop-items.in' 2021-12-31 20:59:30 +01:00
91f8c5d64a s6: minor cleanups
The "live" bundle is pointless and superfluous. Remove it. Also, the
pacman-init up oneshot had a useless fdmove line in it. Remove that as
well.
2021-12-30 18:02:30 -06:00
0bff2c5715 complete list 2021-12-31 00:14:12 +02:00
88ebe2ee63 openrc: start before display manager 2021-12-30 23:12:40 +02:00
d253e889c5 0.12 2021-12-22 02:32:57 +02:00
71cb6715a5 add dinit 2021-12-22 02:21:01 +02:00
a4c443b658 0.11.3 2021-11-05 23:53:40 +07:00
a1c122c058 Merge pull request 'add initial support for dinit' (#10) from konimex/live-services:master into master
Reviewed-on: artix/live-services#10
2021-11-05 16:34:25 +01:00
bea63084ab add initial support for dinit 2021-10-27 17:02:51 +07:00
14 changed files with 172 additions and 19 deletions

View File

@@ -1,4 +1,4 @@
VERSION = 0.11.2
VERSION = 0.13.4
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
@@ -42,16 +49,21 @@ S6_PI = \
data/s6/pacman-init/up \
data/s6/pacman-init/down
S6_BUNDLE = \
data/s6/live/type \
data/s6/live/contents
66_LIVE = \
data/66/artix-live
66_PI = \
data/66/pacman-init
DINIT_LIVE = \
data/dinit/artix-live
DINIT_PI = \
data/dinit/pacman-init
DINIT_PI_SCRIPT = \
data/dinit/pacman-init.script
XDG = $(wildcard data/*.desktop)
XBIN = bin/desktop-items
@@ -93,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
@@ -107,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
@@ -116,15 +134,21 @@ install_s6:
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/s6/sv/artix-live
install $(BMODE) $(S6_LIVE) $(DESTDIR)$(SYSCONFDIR)/s6/sv/artix-live/
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/s6/sv/live
install $(BMODE) $(S6_BUNDLE) $(DESTDIR)$(SYSCONFDIR)/s6/sv/live/
install_66:
install_66: install_alpm
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/66/service
install $(FMODE) $(66_LIVE) $(DESTDIR)$(SYSCONFDIR)/66/service/artix-live
install $(FMODE) $(66_PI) $(DESTDIR)$(SYSCONFDIR)/66/service/pacman-init
install_dinit:
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/dinit.d/scripts
install $(DMODE) $(DESTDIR)$(SYSCONFDIR)/dinit.d/live.d
install $(FMODE) $(DINIT_LIVE) $(DESTDIR)$(SYSCONFDIR)/dinit.d/artix-live
install $(FMODE) $(DINIT_PI) $(DESTDIR)$(SYSCONFDIR)/dinit.d/pacman-init
install $(BMODE) $(DINIT_PI_SCRIPT) $(DESTDIR)$(SYSCONFDIR)/dinit.d/scripts/pacman-init
ln -s ../artix-live $(DESTDIR)$(SYSCONFDIR)/dinit.d/live.d
ln -s ../pacman-init $(DESTDIR)$(SYSCONFDIR)/dinit.d/live.d
install_xdg:
install -dm0755 $(DESTDIR)$(PREFIX)/bin
install -m0755 ${XBIN} $(DESTDIR)$(PREFIX)/bin

View File

@@ -30,6 +30,8 @@ elif [[ -d /run/runit ]]; then
ln -s $docs/Runit.pdf "$xdg"/Runit.pdf
elif [[ -d /run/66 ]]; then
ln -s $docs/Suite66.pdf "$xdg"/Suite66.pdf
elif [[ -d /run/dinit ]]; then
ln -s $docs/Dinit.pdf "$xdg"/Dinit.pdf
else
ln -s $docs/S6.pdf "$xdg"/S6.pdf
fi

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 } )

4
data/dinit/artix-live Normal file
View File

@@ -0,0 +1,4 @@
type = scripted
command = /usr/bin/artix-live
restart = false
waits-for = setup

5
data/dinit/pacman-init Normal file
View File

@@ -0,0 +1,5 @@
type = scripted
command = /etc/dinit.d/scripts/pacman-init
stop-command = /usr/bin/umount -l /etc/pacman.d/gnupg
restart = false
waits-for = setup

View File

@@ -0,0 +1,4 @@
#!/bin/sh
/usr/bin/mount -t tmpfs -o size=10M,mode=0755 tmpfs /etc/pacman.d/gnupg
/usr/bin/pacman-key --init
/usr/bin/pacman-key --populate artix

View File

@@ -1,11 +1,13 @@
#!/usr/bin/openrc-run
# Copyright 2014 Aaditya Bagga (aaditya_gnulinux@zoho.com)
# Copyright 2017-2021 The Artix Linux developers
# Distributed under the terms of the GNU General Public License v2
description="LiveMedia Config Script"
depend() {
need localmount
before display-manager ly
}
start() {

View File

@@ -1,2 +0,0 @@
artix-live
pacman-init

View File

@@ -1 +0,0 @@
bundle

View File

@@ -1,6 +1,5 @@
#!@bindir@/execlineb -P
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,94 @@
#!/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(){
[ -d /var/lib/66/system/boot ] || 66-tree -n boot
[ -d /var/lib/66/system/default ] || 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