mirror of
				https://github.com/yggdrasil-network/yggdrasil-go.git
				synced 2025-11-04 03:05:07 +03:00 
			
		
		
		
	contrib/openrc: add init file for OpenRC
This commit is contained in:
		
							parent
							
								
									d5a9c39dab
								
							
						
					
					
						commit
						26a952aa6c
					
				
					 1 changed files with 49 additions and 0 deletions
				
			
		
							
								
								
									
										49
									
								
								contrib/openrc/yggdrasil
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										49
									
								
								contrib/openrc/yggdrasil
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
					@ -0,0 +1,49 @@
 | 
				
			||||||
 | 
					#!/sbin/openrc-run
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					description="An experiment in scalable routing as an encrypted IPv6 overlay network."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CONFFILE="/etc/yggdrasil.conf"
 | 
				
			||||||
 | 
					pidfile="/run/${RC_SVCNAME}.pid"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					command="/usr/bin/yggdrasil"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					depend() {
 | 
				
			||||||
 | 
						use net dns logger
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					start_pre() {
 | 
				
			||||||
 | 
						if [ ! -f "${CONFFILE}" ]; then
 | 
				
			||||||
 | 
							ebegin "Generating new configuration file into ${CONFFILE}"
 | 
				
			||||||
 | 
							if ! eval ${command} -genconf > ${CONFFILE}; then
 | 
				
			||||||
 | 
								eerror "Failed to generate configuration file"
 | 
				
			||||||
 | 
								exit 1
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if [ ! -e /dev/net/tun ]; then
 | 
				
			||||||
 | 
							ebegin "Inserting TUN module"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if ! modprobe tun;  then
 | 
				
			||||||
 | 
								eerror "Failed to insert TUN kernel module"
 | 
				
			||||||
 | 
								exit 1
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					start() {
 | 
				
			||||||
 | 
						ebegin "Starting Yggdrasil"
 | 
				
			||||||
 | 
						start-stop-daemon --start --quiet \
 | 
				
			||||||
 | 
							--pidfile "${pidfile}" \
 | 
				
			||||||
 | 
							--make-pidfile \
 | 
				
			||||||
 | 
							--background \
 | 
				
			||||||
 | 
							--stdout /var/log/yggdrasil.stdout.log \
 | 
				
			||||||
 | 
							--stderr /var/log/yggdrasil.stderr.log \
 | 
				
			||||||
 | 
							--exec "${command}" -- -useconf < "${CONFFILE}"
 | 
				
			||||||
 | 
						eend $?
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					stop() {
 | 
				
			||||||
 | 
						ebegin "Stopping Yggdrasil"
 | 
				
			||||||
 | 
						start-stop-daemon --stop --pidfile "${pidfile}" --exec "${command}"
 | 
				
			||||||
 | 
						eend $?
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue