Compare commits
	
		
			30 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						
						
							
						
						9cf651405e
	
				 | 
					
					
						|||
| 65c79b931c | |||
| 19fae52dc0 | |||
| 1f62798998 | |||
| 231acc723b | |||
| dafee38770 | |||
| 91f8c5d64a | |||
| 
						
						
							
						
						0bff2c5715
	
				 | 
					
					
						|||
| 
						
						
							
						
						88ebe2ee63
	
				 | 
					
					
						|||
| 
						
						
							
						
						d253e889c5
	
				 | 
					
					
						|||
| 
						
						
							
						
						71cb6715a5
	
				 | 
					
					
						|||
| a4c443b658 | |||
| a1c122c058 | |||
| bea63084ab | |||
| 
						
						
							
						
						83b9a674a8
	
				 | 
					
					
						|||
| 26ffee5d7c | |||
| 8c3a81d0ee | |||
| 91b23a5265 | |||
| aa58c995eb | |||
| 68b91bc6ec | |||
| e3c3b5d9a5 | |||
| edaf1d8c0b | |||
| 3d97503604 | |||
| e9e2ec9d9e | |||
| 
						
						
							
						
						320dc22775
	
				 | 
					
					
						|||
| 
						
						
							
						
						759f8236f1
	
				 | 
					
					
						|||
| 
						
						
							
						
						51017c4789
	
				 | 
					
					
						|||
| 9fafba1f67 | |||
| 
						
						
							
						
						1bb3f828fe
	
				 | 
					
					
						|||
| 
						
						
							
						
						76618b8ffe
	
				 | 
					
					
						
							
								
								
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							@@ -1,6 +1,6 @@
 | 
			
		||||
BSD 2-Clause License
 | 
			
		||||
 | 
			
		||||
Copyright (c) 2018-2019, Artix Linux
 | 
			
		||||
Copyright (c) 2018-2021, Artix Linux
 | 
			
		||||
All rights reserved.
 | 
			
		||||
 | 
			
		||||
Redistribution and use in source and binary forms, with or without
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										76
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										76
									
								
								Makefile
									
									
									
									
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
VERSION = 0.8
 | 
			
		||||
VERSION = 0.12.3
 | 
			
		||||
 | 
			
		||||
PKG = live-services
 | 
			
		||||
TOOLS = artools
 | 
			
		||||
@@ -8,6 +8,8 @@ PREFIX ?= /usr
 | 
			
		||||
BINDIR = $(PREFIX)/bin
 | 
			
		||||
LIBDIR = $(PREFIX)/lib
 | 
			
		||||
DATADIR = $(PREFIX)/share
 | 
			
		||||
SYSUSERSDIR = $(PREFIX)/lib/sysusers.d
 | 
			
		||||
LIVEUSER ?= artix
 | 
			
		||||
 | 
			
		||||
FMODE = -m0644
 | 
			
		||||
DMODE = -dm0755
 | 
			
		||||
@@ -16,8 +18,6 @@ BMODE = -m0755
 | 
			
		||||
BIN = \
 | 
			
		||||
	bin/artix-live
 | 
			
		||||
 | 
			
		||||
LIBS = $(wildcard lib/*.sh)
 | 
			
		||||
 | 
			
		||||
SHARED = \
 | 
			
		||||
	$(wildcard data/*.map) \
 | 
			
		||||
	data/live.conf
 | 
			
		||||
@@ -34,28 +34,66 @@ RUNIT_SV = \
 | 
			
		||||
	data/runit/pacman-init.run
 | 
			
		||||
 | 
			
		||||
S6_LIVE = \
 | 
			
		||||
	$(wildcard data/s6/artix-live/*)
 | 
			
		||||
	data/s6/artix-live/up \
 | 
			
		||||
	data/s6/artix-live/type
 | 
			
		||||
 | 
			
		||||
S6_PI = \
 | 
			
		||||
	$(wildcard data/s6/pacman-init/*)
 | 
			
		||||
	data/s6/pacman-init/type \
 | 
			
		||||
	data/s6/pacman-init/up \
 | 
			
		||||
	data/s6/pacman-init/down
 | 
			
		||||
 | 
			
		||||
S6_BUNDLE = \
 | 
			
		||||
	$(wildcard data/s6/live/*)
 | 
			
		||||
66_LIVE = \
 | 
			
		||||
	data/66/artix-live
 | 
			
		||||
 | 
			
		||||
S6_SV = \
 | 
			
		||||
	data/s6/pacman-init.run
 | 
			
		||||
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
 | 
			
		||||
 | 
			
		||||
SYSUSERS = \
 | 
			
		||||
	data/sysusers
 | 
			
		||||
 | 
			
		||||
RM = rm -f
 | 
			
		||||
M4 = m4 -P
 | 
			
		||||
CHMODAW = chmod a-w
 | 
			
		||||
CHMODX = chmod +x
 | 
			
		||||
 | 
			
		||||
all: $(BIN) $(SYSUSERS) $(XBIN) $(RC) $(RUNIT_SVD) $(S6_PI) $(S6_LIVE)
 | 
			
		||||
 | 
			
		||||
EDIT = sed -e "s|@datadir[@]|$(DATADIR)|g" \
 | 
			
		||||
	-e "s|@sysconfdir[@]|$(SYSCONFDIR)|g" \
 | 
			
		||||
	-e "s|@bindir[@]|$(BINDIR)|g" \
 | 
			
		||||
	-e "s|@libdir[@]|$(LIBDIR)|g" \
 | 
			
		||||
	-e "s|@live[@]|$(LIVEUSER)|g"
 | 
			
		||||
 | 
			
		||||
%: %.in Makefile lib/util-live.sh
 | 
			
		||||
	@echo "GEN $@"
 | 
			
		||||
	@$(RM) "$@"
 | 
			
		||||
	@{ echo -n 'm4_changequote([[[,]]])'; cat $@.in; } | $(M4) | $(EDIT) >$@
 | 
			
		||||
	@$(CHMODAW) "$@"
 | 
			
		||||
	@$(CHMODX) "$@"
 | 
			
		||||
	@bash -O extglob -n "$@"
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	$(RM) $(BIN) $(SYSUSERS) $(XBIN) $(RC) $(RUNIT_SVD) $(S6_PI) $(S6_LIVE)
 | 
			
		||||
 | 
			
		||||
install_base:
 | 
			
		||||
	install $(DMODE) $(DESTDIR)$(BINDIR)
 | 
			
		||||
	install $(BMODE) $(BIN) $(DESTDIR)$(BINDIR)
 | 
			
		||||
 | 
			
		||||
	install $(DMODE) $(DESTDIR)$(LIBDIR)/$(TOOLS)
 | 
			
		||||
	install $(FMODE) $(LIBS) $(DESTDIR)$(LIBDIR)/$(TOOLS)
 | 
			
		||||
	install $(DMODE) $(DESTDIR)$(SYSUSERSDIR)
 | 
			
		||||
	install $(FMODE) $(SYSUSERS) $(DESTDIR)$(SYSUSERSDIR)/live-artix.conf
 | 
			
		||||
 | 
			
		||||
	install $(DMODE) $(DESTDIR)$(DATADIR)/$(TOOLS)
 | 
			
		||||
	install $(FMODE) $(SHARED) $(DESTDIR)$(DATADIR)/$(TOOLS)
 | 
			
		||||
@@ -83,8 +121,20 @@ 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 $(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
 | 
			
		||||
 
 | 
			
		||||
@@ -1,36 +0,0 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
LOGFILE='/var/log/artix-live.log'
 | 
			
		||||
 | 
			
		||||
. /usr/lib/artools/util-live.sh
 | 
			
		||||
 | 
			
		||||
load_live_config "/etc/artools/live.conf" || load_live_config "/usr/share/artools/live.conf"
 | 
			
		||||
 | 
			
		||||
CONSOLEFONT="$(kernel_cmdline vconsole.font)"
 | 
			
		||||
CONSOLEMAP="$(kernel_cmdline vconsole.font.map)"
 | 
			
		||||
echo "Got consolefont ${CONSOLEFONT} and consolemap ${CONSOLEMAP}" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
# Activate swap
 | 
			
		||||
configure_swap
 | 
			
		||||
echo "Activated swap and added to fstab" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
configure_language
 | 
			
		||||
echo "Finished localization" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
configure_user 'root'
 | 
			
		||||
echo "Configured root user" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
configure_user "${USER_NAME}"
 | 
			
		||||
echo "Created user ${USER_NAME} with password ${PASSWORD}" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
detect_desktop_env
 | 
			
		||||
echo "Detected ${DEFAULT_DESKTOP_EXECUTABLE} ${DEFAULT_DESKTOP_FILE}" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
configure_accountsservice "${USER_NAME}"
 | 
			
		||||
echo "Configured accountsservice" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
configure_displaymanager
 | 
			
		||||
echo "Configured displaymanager" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
configure_branding
 | 
			
		||||
echo "Configured branding" >> "${LOGFILE}"
 | 
			
		||||
							
								
								
									
										23
									
								
								bin/artix-live.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								bin/artix-live.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
m4_include(lib/util-live.sh)
 | 
			
		||||
 | 
			
		||||
LOGFILE='/var/log/artix-live.log'
 | 
			
		||||
 | 
			
		||||
CONSOLEFONT="$(kernel_cmdline vconsole.font)"
 | 
			
		||||
CONSOLEMAP="$(kernel_cmdline vconsole.font.map)"
 | 
			
		||||
#echo "Got consolefont ${CONSOLEFONT} and consolemap ${CONSOLEMAP}" >> "${LOGFILE}"
 | 
			
		||||
 | 
			
		||||
configure_swap
 | 
			
		||||
 | 
			
		||||
configure_language
 | 
			
		||||
 | 
			
		||||
configure_user
 | 
			
		||||
 | 
			
		||||
detect_desktop_env
 | 
			
		||||
 | 
			
		||||
configure_accountsservice
 | 
			
		||||
 | 
			
		||||
configure_displaymanager
 | 
			
		||||
 | 
			
		||||
configure_branding
 | 
			
		||||
@@ -5,18 +5,20 @@
 | 
			
		||||
xdg-user-dirs-update --force
 | 
			
		||||
 | 
			
		||||
xdg=$(xdg-user-dir DESKTOP)
 | 
			
		||||
src=/usr/share/applications
 | 
			
		||||
src=@datadir@/applications
 | 
			
		||||
 | 
			
		||||
# if [[ -f $src/org.kde.konversation.desktop ]]; then
 | 
			
		||||
#     install -m644 $src/org.kde.konversation.desktop \
 | 
			
		||||
#     $xdg/org.kde.konversation.desktop
 | 
			
		||||
# fi
 | 
			
		||||
 | 
			
		||||
if [[ -f /usr/bin/calamares ]]; then
 | 
			
		||||
    cp $src/calamares.desktop "$xdg"/calamares.desktop
 | 
			
		||||
if [[ -f @bindir@/calamares ]]; then
 | 
			
		||||
    cp -f $src/calamares.desktop "$xdg/"
 | 
			
		||||
    sed -i s/Icon.*=calamares/Icon=artixlinux-logo/g "$xdg"/calamares.desktop
 | 
			
		||||
    chmod +x "$xdg/calamares.desktop"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
docs=/usr/share/doc/artix
 | 
			
		||||
docs=@datadir@/doc/artix
 | 
			
		||||
 | 
			
		||||
for f in {Configuration,Troubleshooting}.pdf; do
 | 
			
		||||
    ln -s $docs/$f "$xdg"/$f
 | 
			
		||||
@@ -26,6 +28,10 @@ if [[ -d /run/openrc ]]; then
 | 
			
		||||
    ln -s $docs/OpenRC.pdf "$xdg"/OpenRC.pdf
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										8
									
								
								data/66/artix-live
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								data/66/artix-live
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,8 @@
 | 
			
		||||
[main]
 | 
			
		||||
@type = oneshot
 | 
			
		||||
@version = 0.0.1
 | 
			
		||||
@description = "artix-live service"
 | 
			
		||||
@user = ( root )
 | 
			
		||||
 | 
			
		||||
[start]
 | 
			
		||||
@execute = (artix-live)
 | 
			
		||||
							
								
								
									
										14
									
								
								data/66/pacman-init
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								data/66/pacman-init
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,14 @@
 | 
			
		||||
[main]
 | 
			
		||||
@type = oneshot
 | 
			
		||||
@description = "pacman init service"
 | 
			
		||||
@version = 0.0.2
 | 
			
		||||
@user = ( root )
 | 
			
		||||
@extdepends = ( haveged )
 | 
			
		||||
 | 
			
		||||
[start]
 | 
			
		||||
@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 } )
 | 
			
		||||
@@ -7,6 +7,7 @@ pekwm:pekwm
 | 
			
		||||
enlightenment:enlightenment_start
 | 
			
		||||
Lumina-DE:start-lumina-desktop
 | 
			
		||||
LXDE:lxsession
 | 
			
		||||
plasma:startplasma-x11
 | 
			
		||||
lxqt:lxqt-session
 | 
			
		||||
pantheon:pantheon-session
 | 
			
		||||
budgie-desktop:budgie-desktop
 | 
			
		||||
@@ -15,4 +16,3 @@ mate:mate-session
 | 
			
		||||
cinnamon:cinnamon-session-cinnamon
 | 
			
		||||
xfce:startxfce4
 | 
			
		||||
gnome:gnome-session
 | 
			
		||||
plasma:startkde
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								data/dinit/artix-live
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								data/dinit/artix-live
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,4 @@
 | 
			
		||||
type      = scripted
 | 
			
		||||
command   = /usr/bin/artix-live
 | 
			
		||||
restart   = false
 | 
			
		||||
waits-for = setup
 | 
			
		||||
							
								
								
									
										5
									
								
								data/dinit/pacman-init
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								data/dinit/pacman-init
									
									
									
									
									
										Normal 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
 | 
			
		||||
							
								
								
									
										4
									
								
								data/dinit/pacman-init.script
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								data/dinit/pacman-init.script
									
									
									
									
									
										Normal 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
 | 
			
		||||
@@ -3,11 +3,5 @@
 | 
			
		||||
# autologin
 | 
			
		||||
AUTOLOGIN=true
 | 
			
		||||
 | 
			
		||||
# live username
 | 
			
		||||
USER_NAME=artix
 | 
			
		||||
 | 
			
		||||
# live password
 | 
			
		||||
PASSWORD=artix
 | 
			
		||||
 | 
			
		||||
# live group membership
 | 
			
		||||
ADDGROUPS='video,power,cdrom,network,lp,scanner,wheel'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,15 +1,17 @@
 | 
			
		||||
#!/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() {
 | 
			
		||||
	ebegin "Starting artix live script"
 | 
			
		||||
	/usr/bin/artix-live
 | 
			
		||||
	eend $?
 | 
			
		||||
    ebegin "Starting artix live script"
 | 
			
		||||
    /usr/bin/artix-live
 | 
			
		||||
    eend $?
 | 
			
		||||
}
 | 
			
		||||
@@ -12,6 +12,6 @@ depend() {
 | 
			
		||||
start() {
 | 
			
		||||
	ebegin "Running pacman initialization"
 | 
			
		||||
	/usr/bin/pacman-key --init &> /dev/null
 | 
			
		||||
	/usr/bin/pacman-key --populate archlinux artix &> /dev/null
 | 
			
		||||
	/usr/bin/pacman-key --populate artix &> /dev/null
 | 
			
		||||
	eend $?
 | 
			
		||||
}
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
. /usr/lib/rc/functions
 | 
			
		||||
. @libdir@/rc/functions
 | 
			
		||||
 | 
			
		||||
case "$1" in
 | 
			
		||||
    start)
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
mount -t tmpfs -o size=10M,mode=0755 tmpfs /etc/pacman.d/gnupg
 | 
			
		||||
pacman-key --init 1>&2
 | 
			
		||||
pacman-key --populate archlinux artix 1>&2
 | 
			
		||||
pacman-key --populate artix 1>&2
 | 
			
		||||
exec chpst -b pacman-init pause
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +0,0 @@
 | 
			
		||||
#!/usr/bin/execlineb -P
 | 
			
		||||
if { echo "Initializing artix live system" }
 | 
			
		||||
foreground { /usr/bin/artix-live }
 | 
			
		||||
							
								
								
									
										2
									
								
								data/s6/artix-live/up.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								data/s6/artix-live/up.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
#!@bindir@/execlineb -P
 | 
			
		||||
exec @bindir@/artix-live
 | 
			
		||||
@@ -1,2 +0,0 @@
 | 
			
		||||
artix-live
 | 
			
		||||
pacman-init
 | 
			
		||||
@@ -1 +0,0 @@
 | 
			
		||||
bundle
 | 
			
		||||
@@ -1,2 +1,2 @@
 | 
			
		||||
#!/usr/bin/execline -P
 | 
			
		||||
#!@bindir@/execlineb -P
 | 
			
		||||
umount -l /etc/pacman.d/gnupg
 | 
			
		||||
@@ -1,6 +1,5 @@
 | 
			
		||||
#!/usr/bin/execlineb -P
 | 
			
		||||
#!@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 archlinux artix }
 | 
			
		||||
foreground { pacman-key --populate artix }
 | 
			
		||||
							
								
								
									
										12
									
								
								data/sysusers.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								data/sysusers.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
# artix live user
 | 
			
		||||
u @live@ 1000 - /home/@live@ /bin/bash
 | 
			
		||||
 | 
			
		||||
m @live@ video
 | 
			
		||||
m @live@ power
 | 
			
		||||
m @live@ cdrom
 | 
			
		||||
m @live@ network
 | 
			
		||||
m @live@ lp
 | 
			
		||||
m @live@ scanner
 | 
			
		||||
m @live@ wheel
 | 
			
		||||
m @live@ log
 | 
			
		||||
m @live@ users
 | 
			
		||||
							
								
								
									
										245
									
								
								lib/util-live.sh
									
									
									
									
									
								
							
							
						
						
									
										245
									
								
								lib/util-live.sh
									
									
									
									
									
								
							@@ -1,22 +1,15 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#
 | 
			
		||||
# This program is free software; you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation; version 2 of the License.
 | 
			
		||||
#
 | 
			
		||||
# This program is distributed in the hope that it will be useful,
 | 
			
		||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
# GNU General Public License for more details.
 | 
			
		||||
#!/hint/bash
 | 
			
		||||
 | 
			
		||||
export LC_MESSAGES=C
 | 
			
		||||
export LANG=C
 | 
			
		||||
 | 
			
		||||
# {{{ functions
 | 
			
		||||
 | 
			
		||||
kernel_cmdline(){
 | 
			
		||||
    for param in $(cat /proc/cmdline); do
 | 
			
		||||
        case "${param}" in
 | 
			
		||||
            $1=*) echo "${param##*=}"; return 0 ;;
 | 
			
		||||
            $1) return 0 ;;
 | 
			
		||||
            "$1") return 0 ;;
 | 
			
		||||
            *) continue ;;
 | 
			
		||||
        esac
 | 
			
		||||
    done
 | 
			
		||||
@@ -25,86 +18,63 @@ kernel_cmdline(){
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
get_lang(){
 | 
			
		||||
    echo $(kernel_cmdline lang)
 | 
			
		||||
    kernel_cmdline lang
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
get_keytable(){
 | 
			
		||||
    echo $(kernel_cmdline keytable)
 | 
			
		||||
    kernel_cmdline keytable
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
get_tz(){
 | 
			
		||||
    echo $(kernel_cmdline tz)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
load_live_config(){
 | 
			
		||||
 | 
			
		||||
    [[ -f $1 ]] || return 1
 | 
			
		||||
 | 
			
		||||
    local live_conf="$1"
 | 
			
		||||
 | 
			
		||||
    [[ -r ${live_conf} ]] && source ${live_conf}
 | 
			
		||||
 | 
			
		||||
    AUTOLOGIN=${AUTOLOGIN:-true}
 | 
			
		||||
 | 
			
		||||
    USER_NAME=${USER_NAME:-"artix"}
 | 
			
		||||
 | 
			
		||||
    PASSWORD=${PASSWORD:-"artix"}
 | 
			
		||||
 | 
			
		||||
    ADDGROUPS=${ADDGROUPS:-"video,power,cdrom,network,lp,scanner,wheel,users,log"}
 | 
			
		||||
 | 
			
		||||
    return 0
 | 
			
		||||
    kernel_cmdline tz
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
is_valid_de(){
 | 
			
		||||
    if [[ ${DEFAULT_DESKTOP_EXECUTABLE} != "none" ]] && \
 | 
			
		||||
    [[ ${DEFAULT_DESKTOP_FILE} != "none" ]]; then
 | 
			
		||||
        return 0
 | 
			
		||||
    else
 | 
			
		||||
        return 1
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
load_desktop_map(){
 | 
			
		||||
    local _space="s| ||g" _clean=':a;N;$!ba;s/\n/ /g' _com_rm="s|#.*||g" \
 | 
			
		||||
        file=/usr/share/artools/desktop.map
 | 
			
		||||
    local desktop_map=$(sed "$_com_rm" "$file" | sed "$_space" | sed "$_clean")
 | 
			
		||||
    echo ${desktop_map}
 | 
			
		||||
    return 1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
detect_desktop_env(){
 | 
			
		||||
    local key val map=( $(load_desktop_map) )
 | 
			
		||||
    local key val map
 | 
			
		||||
    map="${DATADIR}"/artools/desktop.map
 | 
			
		||||
    DEFAULT_DESKTOP_FILE="none"
 | 
			
		||||
    DEFAULT_DESKTOP_EXECUTABLE="none"
 | 
			
		||||
    for item in "${map[@]}";do
 | 
			
		||||
    while read -r item; do
 | 
			
		||||
        key=${item%:*}
 | 
			
		||||
        val=${item#*:}
 | 
			
		||||
        if [[ -f /usr/share/xsessions/$key.desktop ]] && [[ -f /usr/bin/$val ]];then
 | 
			
		||||
        if [[ -f "${DATADIR}"/xsessions/$key.desktop ]] && [[ -f ${BINDIR}/$val ]];then
 | 
			
		||||
            DEFAULT_DESKTOP_FILE="$key"
 | 
			
		||||
            DEFAULT_DESKTOP_EXECUTABLE="$val"
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
    done < "$map"
 | 
			
		||||
    echo "Detected ${DEFAULT_DESKTOP_EXECUTABLE} ${DEFAULT_DESKTOP_FILE}" >> "${LOGFILE}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
configure_accountsservice(){
 | 
			
		||||
    local path=/var/lib/AccountsService/users
 | 
			
		||||
    local path=/var/lib/AccountsService/users user="${1:-${LIVEUSER}}"
 | 
			
		||||
    if [ -d "${path}" ] ; then
 | 
			
		||||
        echo "[User]" > ${path}/$1
 | 
			
		||||
        echo "XSession=${DEFAULT_DESKTOP_FILE}" >> ${path}/$1
 | 
			
		||||
        if [[ -f "/var/lib/AccountsService/icons/$1.png" ]];then
 | 
			
		||||
            echo "Icon=/var/lib/AccountsService/icons/$1.png" >> ${path}/$1
 | 
			
		||||
        echo "[User]" > ${path}/"$user"
 | 
			
		||||
        echo "XSession=${DEFAULT_DESKTOP_FILE}" >> ${path}/"$user"
 | 
			
		||||
        if [[ -f "/var/lib/AccountsService/icons/$user.png" ]];then
 | 
			
		||||
            echo "Icon=/var/lib/AccountsService/icons/$user.png" >> ${path}/"$user"
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    echo "Configured accountsservice" >> "${LOGFILE}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 set_lightdm_greeter(){
 | 
			
		||||
    local greeters=$(ls /usr/share/xgreeters/*greeter.desktop) name
 | 
			
		||||
    for g in ${greeters[@]};do
 | 
			
		||||
    local name
 | 
			
		||||
    for g in "${DATADIR}"/xgreeters/*.desktop;do
 | 
			
		||||
        name=${g##*/}
 | 
			
		||||
        name=${name%%.*}
 | 
			
		||||
        case ${name} in
 | 
			
		||||
            lightdm-gtk-greeter) break ;;
 | 
			
		||||
            lightdm-*-greeter)
 | 
			
		||||
                sed -i -e "s/^.*greeter-session=.*/greeter-session=${name}/" /etc/lightdm/lightdm.conf
 | 
			
		||||
                sed -e "s/^.*greeter-session=.*/greeter-session=${name}/" \
 | 
			
		||||
                    -i /etc/lightdm/lightdm.conf
 | 
			
		||||
            ;;
 | 
			
		||||
        esac
 | 
			
		||||
    done
 | 
			
		||||
@@ -113,53 +83,50 @@ configure_accountsservice(){
 | 
			
		||||
configure_displaymanager(){
 | 
			
		||||
    # Try to detect desktop environment
 | 
			
		||||
    # Configure display manager
 | 
			
		||||
    if [[ -f /usr/bin/lightdm ]];then
 | 
			
		||||
        groupadd -r autologin
 | 
			
		||||
        sed -i -e 's/^.*minimum-vt=.*/minimum-vt=7/' /etc/lightdm/lightdm.conf
 | 
			
		||||
        set_lightdm_greeter
 | 
			
		||||
        if $(is_valid_de); then
 | 
			
		||||
                sed -i -e "s/^.*user-session=.*/user-session=$DEFAULT_DESKTOP_FILE/" /etc/lightdm/lightdm.conf
 | 
			
		||||
        fi
 | 
			
		||||
        if ${AUTOLOGIN};then
 | 
			
		||||
            gpasswd -a ${USER_NAME} autologin &> /dev/null
 | 
			
		||||
            sed -i -e "s/^.*autologin-user=.*/autologin-user=${USER_NAME}/" /etc/lightdm/lightdm.conf
 | 
			
		||||
            sed -i -e "s/^.*autologin-user-timeout=.*/autologin-user-timeout=0/" /etc/lightdm/lightdm.conf
 | 
			
		||||
            sed -i -e "s/^.*pam-autologin-service=.*/pam-autologin-service=lightdm-autologin/" /etc/lightdm/lightdm.conf
 | 
			
		||||
        fi
 | 
			
		||||
    elif [[ -f /usr/bin/gdm ]];then
 | 
			
		||||
        configure_accountsservice "gdm"
 | 
			
		||||
        if ${AUTOLOGIN};then
 | 
			
		||||
            sed -i -e "s/\[daemon\]/\[daemon\]\nAutomaticLogin=${USER_NAME}\nAutomaticLoginEnable=True/" /etc/gdm/custom.conf
 | 
			
		||||
        fi
 | 
			
		||||
    elif [[ -f /usr/bin/sddm ]];then
 | 
			
		||||
        if $(is_valid_de); then
 | 
			
		||||
            sed -i -e "s|^Session=.*|Session=$DEFAULT_DESKTOP_FILE.desktop|" /etc/sddm.conf
 | 
			
		||||
        fi
 | 
			
		||||
        if ${AUTOLOGIN};then
 | 
			
		||||
            sed -i -e "s|^User=.*|User=${USER_NAME}|" /etc/sddm.conf
 | 
			
		||||
        fi
 | 
			
		||||
    elif [[ -f /usr/bin/lxdm ]];then
 | 
			
		||||
        if $(is_valid_de); then
 | 
			
		||||
            sed -i -e "s|^.*session=.*|session=/usr/bin/${DEFAULT_DESKTOP_EXECUTABLE}|" /etc/lxdm/lxdm.conf
 | 
			
		||||
        fi
 | 
			
		||||
        if ${AUTOLOGIN};then
 | 
			
		||||
            sed -i -e "s/^.*autologin=.*/autologin=${USER_NAME}/" /etc/lxdm/lxdm.conf
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
gen_pw(){
 | 
			
		||||
    echo $(perl -e 'print crypt($ARGV[0], "password")' ${PASSWORD})
 | 
			
		||||
    if [[ -f "${BINDIR}"/lightdm ]];then
 | 
			
		||||
        groupadd -r autologin
 | 
			
		||||
        gpasswd -a "${LIVEUSER}" autologin &> /dev/null
 | 
			
		||||
        set_lightdm_greeter
 | 
			
		||||
        if is_valid_de; then
 | 
			
		||||
            sed -e "s/^.*user-session=.*/user-session=$DEFAULT_DESKTOP_FILE/" \
 | 
			
		||||
                -e 's/^.*minimum-vt=.*/minimum-vt=7/' \
 | 
			
		||||
                -i /etc/lightdm/lightdm.conf
 | 
			
		||||
        fi
 | 
			
		||||
        ${AUTOLOGIN} && sed -e "s/^.*autologin-user=.*/autologin-user=${LIVEUSER}/" \
 | 
			
		||||
                -e "s/^.*autologin-user-timeout=.*/autologin-user-timeout=0/" \
 | 
			
		||||
                -e "s/^.*pam-autologin-service=.*/pam-autologin-service=lightdm-autologin/" \
 | 
			
		||||
                -i /etc/lightdm/lightdm.conf
 | 
			
		||||
    elif [[ -f "${BINDIR}"/gdm ]];then
 | 
			
		||||
        configure_accountsservice "gdm"
 | 
			
		||||
        ${AUTOLOGIN} && sed -e "s/\[daemon\]/\[daemon\]\nAutomaticLogin=${LIVEUSER}\nAutomaticLoginEnable=True/" \
 | 
			
		||||
                -i /etc/gdm/custom.conf
 | 
			
		||||
    elif [[ -f "${BINDIR}"/sddm ]];then
 | 
			
		||||
        if is_valid_de; then
 | 
			
		||||
            sed -e "s|^Session=.*|Session=$DEFAULT_DESKTOP_FILE.desktop|" \
 | 
			
		||||
                -i /etc/sddm.conf
 | 
			
		||||
        fi
 | 
			
		||||
        ${AUTOLOGIN} && sed -e "s|^User=.*|User=${LIVEUSER}|" \
 | 
			
		||||
                -i /etc/sddm.conf
 | 
			
		||||
    elif [[ -f "${BINDIR}"/lxdm ]];then
 | 
			
		||||
        if is_valid_de; then
 | 
			
		||||
            sed -e "s|^.*session=.*|session=${BINDIR}/${DEFAULT_DESKTOP_EXECUTABLE}|" \
 | 
			
		||||
                -i /etc/lxdm/lxdm.conf
 | 
			
		||||
        fi
 | 
			
		||||
        ${AUTOLOGIN} && sed -e "s/^.*autologin=.*/autologin=${LIVEUSER}/" \
 | 
			
		||||
                -i /etc/lxdm/lxdm.conf
 | 
			
		||||
    fi
 | 
			
		||||
    echo "Configured displaymanager" >> "${LOGFILE}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
find_legacy_keymap(){
 | 
			
		||||
    local file="/usr/share/artools/kbd-model.map" kt="$1"
 | 
			
		||||
    local file="${DATADIR}/artools/kbd-model.map" kt="$1"
 | 
			
		||||
    while read -r line || [[ -n $line ]]; do
 | 
			
		||||
        if [[ -z $line ]] || [[ $line == \#* ]]; then
 | 
			
		||||
            continue
 | 
			
		||||
        fi
 | 
			
		||||
 | 
			
		||||
        local mapping=( $line ); # parses columns
 | 
			
		||||
        local mapping=( "$line" ); # parses columns
 | 
			
		||||
        if [[ ${#mapping[@]} != 5 ]]; then
 | 
			
		||||
            continue
 | 
			
		||||
        fi
 | 
			
		||||
@@ -175,7 +142,7 @@ find_legacy_keymap(){
 | 
			
		||||
        X11_LAYOUT=${mapping[1]}
 | 
			
		||||
        X11_MODEL=${mapping[2]}
 | 
			
		||||
        X11_VARIANT=${mapping[3]}
 | 
			
		||||
        x11_OPTIONS=${mapping[4]}
 | 
			
		||||
        X11_OPTIONS=${mapping[4]}
 | 
			
		||||
    done < $file
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -201,64 +168,92 @@ write_x11_config(){
 | 
			
		||||
 | 
			
		||||
    local XORGKBLAYOUT="/etc/X11/xorg.conf.d/00-keyboard.conf"
 | 
			
		||||
 | 
			
		||||
    echo "" >> "$XORGKBLAYOUT"
 | 
			
		||||
    echo "Section \"InputClass\"" > "$XORGKBLAYOUT"
 | 
			
		||||
    echo " Identifier \"system-keyboard\"" >> "$XORGKBLAYOUT"
 | 
			
		||||
    echo " MatchIsKeyboard \"on\"" >> "$XORGKBLAYOUT"
 | 
			
		||||
    echo " Option \"XkbLayout\" \"$X11_LAYOUT\"" >> "$XORGKBLAYOUT"
 | 
			
		||||
    echo " Option \"XkbModel\" \"$X11_MODEL\"" >> "$XORGKBLAYOUT"
 | 
			
		||||
    echo " Option \"XkbVariant\" \"$X11_VARIANT\"" >> "$XORGKBLAYOUT"
 | 
			
		||||
    echo " Option \"XkbOptions\" \"$X11_OPTIONS\"" >> "$XORGKBLAYOUT"
 | 
			
		||||
    echo "EndSection" >> "$XORGKBLAYOUT"
 | 
			
		||||
    {
 | 
			
		||||
    echo " Identifier \"system-keyboard\""
 | 
			
		||||
    echo " MatchIsKeyboard \"on\""
 | 
			
		||||
    echo " Option \"XkbLayout\" \"$X11_LAYOUT\""
 | 
			
		||||
    echo " Option \"XkbModel\" \"$X11_MODEL\""
 | 
			
		||||
    echo " Option \"XkbVariant\" \"$X11_VARIANT\""
 | 
			
		||||
    echo " Option \"XkbOptions\" \"$X11_OPTIONS\""
 | 
			
		||||
    echo "EndSection"
 | 
			
		||||
    } >> "$XORGKBLAYOUT"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
configure_language(){
 | 
			
		||||
    # hack to be able to set the locale on bootup
 | 
			
		||||
    local lang=$(get_lang)
 | 
			
		||||
    local keytable=$(get_keytable)
 | 
			
		||||
    local timezone=$(get_tz)
 | 
			
		||||
    local lang keytable timezone
 | 
			
		||||
    lang=$(get_lang)
 | 
			
		||||
    keytable=$(get_keytable)
 | 
			
		||||
    timezone=$(get_tz)
 | 
			
		||||
 | 
			
		||||
    sed -e "s/#${lang}.UTF-8/${lang}.UTF-8/" -i /etc/locale.gen
 | 
			
		||||
 | 
			
		||||
    if [[ -d /run/openrc ]]; then
 | 
			
		||||
        sed -i "s/keymap=.*/keymap=\"${keytable}\"/" /etc/conf.d/keymaps
 | 
			
		||||
    fi
 | 
			
		||||
    echo "KEYMAP=${keytable}" > /etc/vconsole.conf
 | 
			
		||||
    echo "LANG=${lang}.UTF-8" > /etc/locale.conf
 | 
			
		||||
    ln -sf /usr/share/zoneinfo/${timezone} /etc/localtime
 | 
			
		||||
    ln -sf "${DATADIR}"/zoneinfo/"${timezone}" /etc/localtime
 | 
			
		||||
 | 
			
		||||
    write_x11_config "${keytable}"
 | 
			
		||||
 | 
			
		||||
    loadkeys "${keytable}"
 | 
			
		||||
 | 
			
		||||
    locale-gen ${lang}
 | 
			
		||||
    echo "Configured language: ${lang}" >> "${LOGFILE}"
 | 
			
		||||
    echo "Configured keymap: ${keytable}" >> "${LOGFILE}"
 | 
			
		||||
    echo "Configured timezone: ${timezone}" >> "${LOGFILE}"
 | 
			
		||||
    locale-gen "${lang}"
 | 
			
		||||
    {
 | 
			
		||||
    echo "Configured language: ${lang}"
 | 
			
		||||
    echo "Configured keymap: ${keytable}"
 | 
			
		||||
    echo "Configured timezone: ${timezone}"
 | 
			
		||||
    echo "Finished localization"
 | 
			
		||||
    } >> "${LOGFILE}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
configure_swap(){
 | 
			
		||||
    local swapdev="$(fdisk -l 2>/dev/null | grep swap | cut -d' ' -f1)"
 | 
			
		||||
    local swapdev
 | 
			
		||||
    swapdev="$(fdisk -l 2>/dev/null | grep swap | cut -d' ' -f1)"
 | 
			
		||||
    if [ -e "${swapdev}" ]; then
 | 
			
		||||
        swapon ${swapdev}
 | 
			
		||||
        swapon "${swapdev}"
 | 
			
		||||
    fi
 | 
			
		||||
    echo "Activated swap and added to fstab" >> "${LOGFILE}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
configure_branding(){
 | 
			
		||||
    if [[ -f /usr/bin/neofetch ]]; then
 | 
			
		||||
    if [[ -f "${BINDIR}"/neofetch ]]; then
 | 
			
		||||
        neofetch >| /etc/issue
 | 
			
		||||
        echo "Configured branding" >> "${LOGFILE}"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
configure_user(){
 | 
			
		||||
    local user="$1"
 | 
			
		||||
    if [[ "$user" == 'root' ]];then
 | 
			
		||||
        echo "root:${PASSWORD}" | chroot / chpasswd
 | 
			
		||||
        cp /etc/skel/.{bash_profile,bashrc,bash_logout} /root/
 | 
			
		||||
    else
 | 
			
		||||
        local args=(-m -G ${ADDGROUPS} -s /bin/bash $user)
 | 
			
		||||
        # set up user and password
 | 
			
		||||
        [[ -n ${PASSWORD} ]] && args+=(-p $(gen_pw))
 | 
			
		||||
        useradd "${args[@]}"
 | 
			
		||||
    fi
 | 
			
		||||
    echo "root:${PASSWORD}" | chroot / chpasswd
 | 
			
		||||
    cp /etc/skel/.{bash_profile,bashrc,bash_logout} /root/
 | 
			
		||||
 | 
			
		||||
    mkdir /home/${LIVEUSER}
 | 
			
		||||
    chown ${LIVEUSER}:${LIVEUSER} /home/${LIVEUSER}
 | 
			
		||||
    echo "${LIVEUSER}:${PASSWORD}" | chroot / chpasswd
 | 
			
		||||
    cp -r /etc/skel/.[^.]* /home/${LIVEUSER}
 | 
			
		||||
    chown -R ${LIVEUSER}:${LIVEUSER} /home/${LIVEUSER}
 | 
			
		||||
    echo "Configured live user ${LIVEUSER} with password ${PASSWORD}" >> "${LOGFILE}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# }}}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
load_live_config(){
 | 
			
		||||
 | 
			
		||||
    [[ -f $1 ]] || return 1
 | 
			
		||||
 | 
			
		||||
    local live_conf="$1"
 | 
			
		||||
 | 
			
		||||
    [[ -r "${live_conf}" ]] && source "${live_conf}"
 | 
			
		||||
 | 
			
		||||
    AUTOLOGIN=${AUTOLOGIN:-true}
 | 
			
		||||
 | 
			
		||||
    PASSWORD=${PASSWORD:-artix}
 | 
			
		||||
 | 
			
		||||
    return 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
load_live_config "@sysconfdir@/artools/live.conf" || load_live_config "@datadir@/artools/live.conf"
 | 
			
		||||
 | 
			
		||||
LIVEUSER=@live@
 | 
			
		||||
DATADIR=@datadir@
 | 
			
		||||
BINDIR=@bindir@
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user