forked from artix/alpm-hooks
		
	Compare commits
	
		
			5 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| d68ed909c4 | |||
|   | 3ada9e391e | ||
| 3d142ebda7 | |||
| 7a5877342a | |||
| 6a1c2c55d9 | 
							
								
								
									
										10
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								Makefile
									
									
									
									
									
								
							| @@ -37,6 +37,10 @@ TMPFILESHOOKS = $(wildcard etmpfiles/hooks/*) | ||||
|  | ||||
| SYSUSERSHOOKS = $(wildcard esysusers/hooks/*) | ||||
|  | ||||
| WRAPPER = $(wildcard wrapper/*) | ||||
|  | ||||
| WRAPPERDIR = $(PREFIX)/share/artix | ||||
|  | ||||
| DMODE = -dm0755 | ||||
| MODE = -m0644 | ||||
| EMODE = -m0755 | ||||
| @@ -105,4 +109,8 @@ install_dinit_at: install_hook_common | ||||
| install_dinit_dbus: install_hook_common | ||||
| 	install $(MODE) $(DINITDBUSHOOKS) $(DESTDIR)$(HOOKSDIR) | ||||
|  | ||||
| .PHONY: install install_base install_s6 install_openrc install_runit install_dinit | ||||
| install_wrapper: | ||||
| 	install $(DMODE) $(DESTDIR)$(WRAPPERDIR) | ||||
| 	install $(EMODE) $(WRAPPER) $(DESTDIR)$(WRAPPERDIR) | ||||
|  | ||||
| .PHONY: install install_base install_s6 install_openrc install_runit install_dinit install_wrapper | ||||
|   | ||||
| @@ -33,7 +33,7 @@ init_detect(){ | ||||
| s6_init_remake(){ | ||||
|     # we need to ensure that s6-linux-init-maker is run on every machine | ||||
|     rm -rf /tmp/current | ||||
|     s6-linux-init-maker -1 -G "/usr/bin/agetty -L -8 tty7 115200" -c /etc/s6/current /tmp/current | ||||
|     s6-linux-init-maker -1 -G "/usr/bin/agetty -L -8 tty12 115200" -c /etc/s6/current /tmp/current | ||||
|     mv /tmp/current/bin/init /tmp/current/bin/s6-init | ||||
|     cp -a /tmp/current/bin /usr | ||||
|     rm -rf /tmp/current/{bin,scripts} | ||||
|   | ||||
							
								
								
									
										55
									
								
								wrapper/artix-svc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								wrapper/artix-svc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,55 @@ | ||||
| #!/bin/sh | ||||
|  | ||||
| sv_start() { | ||||
| 	case "$init" in | ||||
| 		openrc) exec /usr/bin/rc-service "$1" start ;; | ||||
| 		runit) exec /usr/bin/sv start /run/runit/service/"$1" ;; | ||||
| 		s6) exec /usr/bin/s6-rc -u change "$1" ;; | ||||
| 		dinit) exec /usr/bin/dinitctl start "$1" ;; | ||||
| 	esac | ||||
| } | ||||
|  | ||||
| sv_stop() { | ||||
| 	case "$init" in | ||||
| 		openrc) exec /usr/bin/rc-service "$1" stop ;; | ||||
| 		runit) exec /usr/bin/sv stop /run/runit/service/"$1" ;; | ||||
| 		s6) exec /usr/bin/s6-rc -d change "$1" ;; | ||||
| 		dinit) exec /usr/bin/dinitctl stop "$1" ;; | ||||
| 	esac | ||||
| } | ||||
|  | ||||
| sv_enable() { | ||||
| 	case "$init" in | ||||
| 		openrc) exec /usr/bin/rc-update add "$1" default ;; | ||||
| 		runit) exec unlink /run/runit/service/"$1"/down ;; | ||||
| 		s6) exec /usr/bin/s6-service add default "$1" ;; | ||||
| 		dinit) exec /usr/bin/dinitctl enable "$1" ;; | ||||
| 	esac | ||||
| } | ||||
|  | ||||
| sv_disable() { | ||||
| 	case "$init" in | ||||
| 		openrc) exec /usr/bin/rc-update del "$1" default ;; | ||||
| 		runit)  exec touch /run/runit/service/"$1"/down ;; | ||||
| 		s6) exec /usr/bin/s6-service delete default "$1" ;; | ||||
| 		dinit) exec /usr/bin/dinitctl disable "$1" ;; | ||||
| 	esac | ||||
| } | ||||
|  | ||||
| if [ -d /run/openrc ]; then | ||||
| 	init=openrc | ||||
| elif [ -d /run/runit ]; then | ||||
| 	init=runit | ||||
| elif [ -d /run/s6-rc ]; then | ||||
| 	init=s6 | ||||
| elif [ -S /run/dinitctl ]; then | ||||
| 	init=dinit | ||||
| fi | ||||
|  | ||||
| case "$1" in | ||||
| 	start)   shift; sv_start   "$@" ;; | ||||
| 	stop)    shift; sv_stop    "$@" ;; | ||||
| 	enable)  shift; sv_enable  "$@" ;; | ||||
| 	disable) shift; sv_disable "$@" ;; | ||||
| esac | ||||
|  | ||||
		Reference in New Issue
	
	Block a user