Compare commits
	
		
			23 Commits
		
	
	
		
			openrc-0.1
			...
			funtoo-ope
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					6b78f4c8e0 | ||
| 
						 | 
					e8b4dc22cb | ||
| 
						 | 
					5fb4b03366 | ||
| 
						 | 
					76581025ea | ||
| 
						 | 
					a559af4ff9 | ||
| 
						 | 
					35fe25ab06 | ||
| 
						 | 
					a2e4cb2f89 | ||
| 
						 | 
					0490a83134 | ||
| 
						 | 
					0853c110e5 | ||
| 
						 | 
					1a43ce11d0 | ||
| 
						 | 
					46e504b403 | ||
| 
						 | 
					fc1f3d14f4 | ||
| 
						 | 
					b8a016aaba | ||
| 
						 | 
					63f5256b59 | ||
| 
						 | 
					c420f56856 | ||
| 
						 | 
					5b0f323da9 | ||
| 
						 | 
					d86853538a | ||
| 
						 | 
					f2c0e700c6 | ||
| 
						 | 
					b1de9d7324 | ||
| 
						 | 
					5b4886d23e | ||
| 
						 | 
					2a53efbc07 | ||
| 
						 | 
					a530722f65 | ||
| 
						 | 
					661e9cf002 | 
@@ -1,3 +1,3 @@
 | 
			
		||||
NAME=		openrc
 | 
			
		||||
VERSION=	0.12
 | 
			
		||||
VERSION=	0.12.4
 | 
			
		||||
PKG=		${NAME}-${VERSION}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,2 +1,15 @@
 | 
			
		||||
# Set to the hostname of this machine
 | 
			
		||||
# Set to the fully qualified domain name (e.g. "mybox.example.com") of
 | 
			
		||||
# this machine, if it has one, otherwise set to the machine name
 | 
			
		||||
# (e.g. "mybox").
 | 
			
		||||
hostname="localhost"
 | 
			
		||||
 | 
			
		||||
# Set to the NIS domain name of this machine, if it has one, otherwise
 | 
			
		||||
# leave commented out.
 | 
			
		||||
#nisdomainname="localdomain.com"
 | 
			
		||||
 | 
			
		||||
# Set other alias-to-address mappings, if needed, otherwise leave
 | 
			
		||||
# commented out.
 | 
			
		||||
#aliases="127.0.0.1 mybox
 | 
			
		||||
#10.0.0.1	mylaptop
 | 
			
		||||
#172.16.0.1	myserver
 | 
			
		||||
#192.168.0.1	myworkstation"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										11
									
								
								etc/rc.conf.GNU-kFreeBSD
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								etc/rc.conf.GNU-kFreeBSD
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
			
		||||
##############################################################################
 | 
			
		||||
# GNU/kFreeBSD SPECIFIC OPTIONS
 | 
			
		||||
 | 
			
		||||
# This is the subsystem type. Valid options on GNU/kFreeBSD:
 | 
			
		||||
# ""        - nothing special
 | 
			
		||||
# "jail"    - FreeBSD jails (not yet implemented)
 | 
			
		||||
# If this is commented out, automatic detection will be used.
 | 
			
		||||
#
 | 
			
		||||
# This should be set to the value representing the environment this file is
 | 
			
		||||
# PRESENTLY in, not the virtualization the environment is capable of.
 | 
			
		||||
#rc_sys=""
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
include ../mk/net.mk
 | 
			
		||||
 | 
			
		||||
DIR=	${INITDIR}
 | 
			
		||||
SRCS=	bootmisc.in fsck.in hostname.in local.in localmount.in loopback.in \
 | 
			
		||||
SRCS=	bootmisc.in fsck.in hostname.in local.in localmount.in \
 | 
			
		||||
	netmount.in root.in savecache.in swap.in swapfiles.in \
 | 
			
		||||
	tmpfiles.setup.in swclock.in sysctl.in urandom.in ${SRCS-${OS}}
 | 
			
		||||
BIN=	${OBJS}
 | 
			
		||||
 
 | 
			
		||||
@@ -117,6 +117,7 @@ migrate_to_run()
 | 
			
		||||
 | 
			
		||||
clean_run()
 | 
			
		||||
{
 | 
			
		||||
	[ "$RC_SYS" = VSERVER ] && return 0
 | 
			
		||||
	local dir
 | 
			
		||||
	dir=$(mktemp -d)
 | 
			
		||||
	mount --bind / $dir
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,7 @@ _IFS="
 | 
			
		||||
depend()
 | 
			
		||||
{
 | 
			
		||||
	use dev clock modules
 | 
			
		||||
	keyword -jail -openvz -prefix -timeout -vserver -lxc
 | 
			
		||||
	keyword -jail -openvz -prefix -timeout -vserver -lxc -uml
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
_abort() {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,18 +1,57 @@
 | 
			
		||||
#!@SBINDIR@/runscript
 | 
			
		||||
#!@PREFIX@/sbin/runscript
 | 
			
		||||
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
 | 
			
		||||
# Released under the 2-clause BSD license.
 | 
			
		||||
 | 
			
		||||
description="Sets the hostname of the machine."
 | 
			
		||||
 | 
			
		||||
depend() {
 | 
			
		||||
	keyword -prefix -lxc
 | 
			
		||||
	need root
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start()
 | 
			
		||||
{
 | 
			
		||||
	# HOSTNAME variable used to be defined in caps in conf.d/hostname.
 | 
			
		||||
	# It is also a magic variable in bash.
 | 
			
		||||
	hostname=${hostname-${HOSTNAME-localhost}} # checkbashisms: false positive
 | 
			
		||||
	hostname=${hostname-${HOSTNAME-localhost}}
 | 
			
		||||
	out=$hostname
 | 
			
		||||
	short=${hostname%%.*}
 | 
			
		||||
	if [ "$short" != "$hostname" ]; then
 | 
			
		||||
		out="$out $short"
 | 
			
		||||
	fi
 | 
			
		||||
	if [ "$nisdomainname" != "" ]; then
 | 
			
		||||
		ebegin "Setting NIS domain name to $nisdomainname"
 | 
			
		||||
		nisdomainname $nisdomainname
 | 
			
		||||
		eend $? "Failed to set the NIS domain name"
 | 
			
		||||
	fi
 | 
			
		||||
	if [ "$short" != "localhost" ]; then
 | 
			
		||||
		out="$out localhost"
 | 
			
		||||
	fi
 | 
			
		||||
	if [ "$hostname" != "localhost.localdomain" ]; then
 | 
			
		||||
		out="$out localhost.localdomain"
 | 
			
		||||
	fi
 | 
			
		||||
	[ -n "$aliases" ] && out2="$aliases"
 | 
			
		||||
	ebegin "Configuring /etc/hosts"
 | 
			
		||||
	cat << END > /etc/hosts
 | 
			
		||||
# Local Host Database
 | 
			
		||||
#
 | 
			
		||||
# This AUTOMATICALLY-GENERATED file describes a number of aliases-to-address
 | 
			
		||||
# mappings for the local hosts that share this file.
 | 
			
		||||
#
 | 
			
		||||
# In the presence of the domain name service or NIS, this file may not be
 | 
			
		||||
# consulted at all; see /etc/host.conf for the resolution order.
 | 
			
		||||
#
 | 
			
		||||
# DO NOT EDIT THIS FILE BY HAND; YOUR CHANGES WILL BE OVERWRITTEN
 | 
			
		||||
#
 | 
			
		||||
# Define alias-to-address mappings in /etc/conf.d/hostname
 | 
			
		||||
 | 
			
		||||
# IPv4 and IPv6 localhost aliases
 | 
			
		||||
127.0.0.1	$out
 | 
			
		||||
::1		$out
 | 
			
		||||
 | 
			
		||||
# Other aliases
 | 
			
		||||
$out2
 | 
			
		||||
END
 | 
			
		||||
	chmod 0644 /etc/hosts
 | 
			
		||||
	eend $?
 | 
			
		||||
	[ "$RC_SYS" = "LXC" ] && return 0
 | 
			
		||||
	ebegin "Setting hostname to $hostname"
 | 
			
		||||
	hostname "$hostname"
 | 
			
		||||
	eend $? "Failed to set the hostname"
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,7 @@ depend()
 | 
			
		||||
	need fsck
 | 
			
		||||
	use lvm modules mtab
 | 
			
		||||
	after lvm modules
 | 
			
		||||
	keyword -jail -openvz -prefix -vserver -lxc
 | 
			
		||||
	keyword -jail -prefix -vserver -lxc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start()
 | 
			
		||||
 
 | 
			
		||||
@@ -1,35 +0,0 @@
 | 
			
		||||
#!@SBINDIR@/runscript
 | 
			
		||||
# Copyright (c) 2013 William Hubbs <w.d.hubbs@gmail.com>
 | 
			
		||||
# Released under the 2-clause BSD license.
 | 
			
		||||
 | 
			
		||||
description="Configures the loopback interface."
 | 
			
		||||
 | 
			
		||||
depend()
 | 
			
		||||
{
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start()
 | 
			
		||||
{
 | 
			
		||||
	if [ "$RC_UNAME" = Linux ]; then
 | 
			
		||||
		ebegin "Bringing up network interface lo"
 | 
			
		||||
		if type ip > /dev/null 2>&1; then
 | 
			
		||||
			ip addr add 127.0.0.1/8 dev lo brd + scope host
 | 
			
		||||
			ip route add 127.0.0.0/8 dev lo scope host
 | 
			
		||||
			ip link set lo up
 | 
			
		||||
		else
 | 
			
		||||
			ifconfig lo 127.0.0.1 netmask 255.0.0.0
 | 
			
		||||
			route add -net 127.0.0.0 netmask 255.0.0.0 gw 127.0.0.1
 | 
			
		||||
		fi
 | 
			
		||||
	else
 | 
			
		||||
		ebegin "Bringing up network interface lo0"
 | 
			
		||||
		ifconfig lo0 127.0.0.1 netmask 255.0.0.0
 | 
			
		||||
		route -q add -inet 127.0.0.0 -netmask 255.0.0.0 127.0.0.1
 | 
			
		||||
	fi
 | 
			
		||||
	eend $?
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
stop()
 | 
			
		||||
{
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
@@ -12,7 +12,7 @@ depend()
 | 
			
		||||
	config /etc/fstab
 | 
			
		||||
	use afc-client amd autofs openvpn
 | 
			
		||||
	use dns
 | 
			
		||||
	keyword -jail -prefix -vserver
 | 
			
		||||
	keyword -jail -prefix -vserver -lxc
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start()
 | 
			
		||||
 
 | 
			
		||||
@@ -1,11 +1,11 @@
 | 
			
		||||
#!@SBINDIR@/runscript
 | 
			
		||||
#!@PREFIX@/sbin/runscript
 | 
			
		||||
# Copyright (c) 2007-2008 Roy Marples <roy@marples.name>
 | 
			
		||||
# Released under the 2-clause BSD license.
 | 
			
		||||
 | 
			
		||||
depend()
 | 
			
		||||
{
 | 
			
		||||
	before bootmisc logger
 | 
			
		||||
	keyword -lxc -prefix -vserver
 | 
			
		||||
	keyword -lxc -vserver
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start()
 | 
			
		||||
@@ -15,6 +15,14 @@ start()
 | 
			
		||||
	ebegin "Configuring kernel parameters"
 | 
			
		||||
	eindent
 | 
			
		||||
 | 
			
		||||
	# default sysctl System V max shared memory to 1/4 of RAM:
 | 
			
		||||
	mem_bytes=`awk '/MemTotal:/ { printf "%0.f",$2 * 1024}' /proc/meminfo`
 | 
			
		||||
	mem_max=`expr $mem_bytes / 4`
 | 
			
		||||
	page_size=`getconf PAGE_SIZE`
 | 
			
		||||
	shmall=`expr $mem_bytes / $page_size`
 | 
			
		||||
	sysctl kernel.shmmax=$mem_max > /dev/null
 | 
			
		||||
	sysctl kernel.shmall=$shmall > /dev/null
 | 
			
		||||
 | 
			
		||||
	for conf in @SYSCONFDIR@/sysctl.conf @SYSCONFDIR@/sysctl.d/*.conf; do
 | 
			
		||||
		if [ -r "$conf" ]; then
 | 
			
		||||
			vebegin "applying $conf"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										9
									
								
								mk/os-GNU-kFreeBSD.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								mk/os-GNU-kFreeBSD.mk
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
			
		||||
# Copyright (c) 2008 Roy Marples <roy@marples.name>
 | 
			
		||||
# Released under the 2-clause BSD license.
 | 
			
		||||
 | 
			
		||||
# Generic definitions
 | 
			
		||||
 | 
			
		||||
CPPFLAGS+=	-D_BSD_SOURCE -D_XOPEN_SOURCE=700
 | 
			
		||||
LIBDL=		-Wl,-Bdynamic -ldl
 | 
			
		||||
LIBKVM?=
 | 
			
		||||
include ${MK}/os-BSD.mk
 | 
			
		||||
							
								
								
									
										2
									
								
								mk/os.mk
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								mk/os.mk
									
									
									
									
									
								
							@@ -3,7 +3,7 @@
 | 
			
		||||
 | 
			
		||||
# Generic definitions
 | 
			
		||||
 | 
			
		||||
_OS_SH=		uname -s
 | 
			
		||||
_OS_SH=		uname -s | tr '/' '-'
 | 
			
		||||
_OS:= 		$(shell ${_OS_SH})
 | 
			
		||||
OS?= 		${_OS}
 | 
			
		||||
include ${MK}/os-${OS}.mk
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
include ../mk/net.mk
 | 
			
		||||
 | 
			
		||||
BOOT=		bootmisc fsck hostname localmount loopback \
 | 
			
		||||
BOOT=		bootmisc fsck hostname localmount \
 | 
			
		||||
		root swap swapfiles sysctl urandom ${BOOT-${OS}}
 | 
			
		||||
DEFAULT=	local netmount
 | 
			
		||||
SHUTDOWN=	savecache ${SHUTDOWN-${OS}}
 | 
			
		||||
 
 | 
			
		||||
@@ -116,7 +116,7 @@ cgroup_set_limits()
 | 
			
		||||
 | 
			
		||||
cgroup_cleanup()
 | 
			
		||||
{
 | 
			
		||||
	yesno "${rc_cgroup_cleanup:-no}" && cgroup_running || return 0
 | 
			
		||||
	cgroup_running || return 0
 | 
			
		||||
	ebegin "starting cgroups cleanup"
 | 
			
		||||
	for sig in TERM QUIT INT; do
 | 
			
		||||
		cgroup_get_pids || { eend 0 "finished" ; return 0 ; }
 | 
			
		||||
 
 | 
			
		||||
@@ -308,6 +308,7 @@ while [ -n "$1" ]; do
 | 
			
		||||
				fi
 | 
			
		||||
				[ "$(command -v cgroup_cleanup)" = "cgroup_cleanup" -a \
 | 
			
		||||
				"$1" = "stop" ] && \
 | 
			
		||||
				yesno "${rc_cgroup_cleanup}" && \
 | 
			
		||||
					cgroup_cleanup
 | 
			
		||||
				shift
 | 
			
		||||
				continue 2
 | 
			
		||||
 
 | 
			
		||||
@@ -30,7 +30,7 @@
 | 
			
		||||
 | 
			
		||||
#include "librc.h"
 | 
			
		||||
 | 
			
		||||
#if defined(__linux__)
 | 
			
		||||
#if defined(__linux__) || defined (__GLIBC__)
 | 
			
		||||
static bool
 | 
			
		||||
pid_is_exec(pid_t pid, const char *exec)
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
@@ -856,7 +856,7 @@ rc_deptree_update(void)
 | 
			
		||||
	 * work for them. This doesn't stop them from being run directly. */
 | 
			
		||||
	if (sys) {
 | 
			
		||||
		len = strlen(sys);
 | 
			
		||||
		nosys = xmalloc(len + 1);
 | 
			
		||||
		nosys = xmalloc(len + 2);
 | 
			
		||||
		nosys[0] = '-';
 | 
			
		||||
		for (i = 0; i < len; i++)
 | 
			
		||||
			nosys[i + 1] = (char)tolower((unsigned char)sys[i]);
 | 
			
		||||
 
 | 
			
		||||
@@ -193,7 +193,7 @@ file_regex(const char *file, const char *regex)
 | 
			
		||||
			str += strlen(str) + 1;
 | 
			
		||||
			/* len is the size of allocated buffer and we don't
 | 
			
		||||
			   want call regexec BUFSIZE times. find next str */
 | 
			
		||||
			while (*str == '\0' && str < line + len)
 | 
			
		||||
			while (str < line + len && *str == '\0')
 | 
			
		||||
				str++;
 | 
			
		||||
		} while (str < line + len);
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -39,7 +39,7 @@
 | 
			
		||||
#  include <sys/statvfs.h>
 | 
			
		||||
#  define statfs statvfs
 | 
			
		||||
#  define F_FLAGS f_flag
 | 
			
		||||
#elif defined (__linux__)
 | 
			
		||||
#elif defined (__linux__) || defined (__GLIBC__)
 | 
			
		||||
#  include <mntent.h>
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
@@ -265,7 +265,7 @@ find_mounts(struct args *args)
 | 
			
		||||
	return list;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#elif defined (__linux__)
 | 
			
		||||
#elif defined (__linux__) || defined (__GLIBC__)
 | 
			
		||||
static struct mntent *
 | 
			
		||||
getmntfile(const char *file)
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
@@ -44,7 +44,7 @@
 | 
			
		||||
#include <time.h>
 | 
			
		||||
#include <unistd.h>
 | 
			
		||||
 | 
			
		||||
#ifdef __linux__
 | 
			
		||||
#if defined(__linux__) || defined(__GLIBC__)
 | 
			
		||||
#  include <pty.h>
 | 
			
		||||
#elif defined(__NetBSD__) || defined(__OpenBSD__)
 | 
			
		||||
#  include <util.h>
 | 
			
		||||
 
 | 
			
		||||
@@ -52,7 +52,7 @@
 | 
			
		||||
#include <time.h>
 | 
			
		||||
#include <unistd.h>
 | 
			
		||||
 | 
			
		||||
#ifdef __linux__
 | 
			
		||||
#if defined(__linux__) || defined(__GLIBC__)
 | 
			
		||||
#  include <pty.h>
 | 
			
		||||
#elif defined(__NetBSD__) || defined(__OpenBSD__)
 | 
			
		||||
#  include <util.h>
 | 
			
		||||
 
 | 
			
		||||
@@ -316,14 +316,12 @@ get_pid(const char *pidfile, bool quiet)
 | 
			
		||||
		return -1;
 | 
			
		||||
 | 
			
		||||
	if ((fp = fopen(pidfile, "r")) == NULL) {
 | 
			
		||||
		if (!quiet)
 | 
			
		||||
			eerror("%s: fopen `%s': %s", applet, pidfile, strerror(errno));
 | 
			
		||||
		ewarnv("%s: fopen `%s': %s", applet, pidfile, strerror(errno));
 | 
			
		||||
		return -1;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (fscanf(fp, "%d", &pid) != 1) {
 | 
			
		||||
		if (!quiet)
 | 
			
		||||
			eerror("%s: no pid found in `%s'", applet, pidfile);
 | 
			
		||||
		ewarnv("%s: no pid found in `%s'", applet, pidfile);
 | 
			
		||||
		fclose(fp);
 | 
			
		||||
		return -1;
 | 
			
		||||
	}
 | 
			
		||||
@@ -461,7 +459,7 @@ run_stop_schedule(const char *exec, const char *const *argv,
 | 
			
		||||
				{
 | 
			
		||||
					if ((nrunning = do_stop(exec, argv,
 | 
			
		||||
						    pid, uid, 0, true, false,
 | 
			
		||||
						    true)) == 0)
 | 
			
		||||
	test)) == 0)
 | 
			
		||||
						return 0;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -1088,7 +1086,7 @@ start_stop_daemon(int argc, char **argv)
 | 
			
		||||
		pid = 0;
 | 
			
		||||
 | 
			
		||||
	if (do_stop(exec, (const char * const *)margv, pid, uid,
 | 
			
		||||
		0, true, false, true) > 0)
 | 
			
		||||
		0, true, false, test) > 0)
 | 
			
		||||
		eerrorx("%s: %s is already running", applet, exec);
 | 
			
		||||
 | 
			
		||||
	if (test) {
 | 
			
		||||
@@ -1366,7 +1364,7 @@ start_stop_daemon(int argc, char **argv)
 | 
			
		||||
			} else
 | 
			
		||||
				pid = 0;
 | 
			
		||||
			if (do_stop(exec, (const char *const *)margv,
 | 
			
		||||
				pid, uid, 0, true, false, true) > 0)
 | 
			
		||||
				pid, uid, 0, true, false, test) > 0)
 | 
			
		||||
				alive = true;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user