summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--DISTRO_PORTING64
-rw-r--r--Makefile.am18
-rw-r--r--configure.ac115
-rw-r--r--src/cgls/cgls.c1
-rw-r--r--src/core/dbus-manager.c7
-rw-r--r--src/core/main.c5
-rw-r--r--src/delta/delta.c1
-rw-r--r--src/detect-virt/detect-virt.c1
-rw-r--r--src/hostname/hostnamectl.c1
-rw-r--r--src/journal/cat.c1
-rw-r--r--src/journal/coredumpctl.c1
-rw-r--r--src/journal/journalctl.c1
-rw-r--r--src/locale/localectl.c1
-rw-r--r--src/login/inhibit.c1
-rw-r--r--src/login/loginctl.c1
-rw-r--r--src/machine-id-setup/machine-id-setup-main.c1
-rw-r--r--src/notify/notify.c1
-rw-r--r--src/systemctl/systemctl.c1
-rw-r--r--src/timedate/timedatectl.c1
-rw-r--r--src/tty-ask-password-agent/tty-ask-password-agent.c1
20 files changed, 35 insertions, 189 deletions
diff --git a/DISTRO_PORTING b/DISTRO_PORTING
index a6ae0439ad..99c652c774 100644
--- a/DISTRO_PORTING
+++ b/DISTRO_PORTING
@@ -4,55 +4,31 @@ HOWTO:
You need to make the follow changes to adapt systemd to your
distribution:
- 0) Make your distribution recognized via the autoconf checks
- in configure.ac. Grep for the word "fedora" (case
- insensitively) and you should be able to find the places where
- you need to add/change things.
-
- 1) Patch src/shared/hostname-setup.c so that systemd knows
- where to read your host name from. You might also want to
- update status_welcome() in util.c.
-
- 2) Check the unit files in units/ if they match your
- distribution. Most likely you will have to make additions to
- units/*.m4 and create a copy of units/fedora/ with changes for
- your distribution.
-
- 3) Adjust Makefile.am to register the unit files you added in
- step 2. Also you might need to update the m4 invocation in
- Makefile.am. Grep for the word "fedora" (case insensitively)
- and you should be able to find the places where you need to
- add/change things.
-
- 4) Try it out. Play around with 'systemd --test --system' for
+ 1) Find the right configure parameters for:
+
+ --with-rootprefix=
+ --with-sysvinit-path=
+ --with-sysvrcd-path=
+ --with-rc-local-script-path-start=
+ --with-rc-local-script-path-stop=
+ --with-kbd-loadkeys=
+ --with-kbd-setfont=
+ --with-tty-gid=
+
+ 2) Try it out. Play around with 'systemd --test --system' for
a test run of systemd without booting. This will read the unit
files and print the initial transaction it would execute
during boot-up. This will also inform you about ordering loops
and suchlike.
CONTRIBUTING UPSTREAM:
- We are interested in merging your changes upstream, if they
- are for a big, and well-known distribution. Unfortunately we
- don't have the time and resources to maintain
- distribution-specific patches for all distributions on the
- planet, hence please do not send us patches that add systemd
- support for non-mainstream or niche distributions.
- Thank you for understanding.
-
-BE CONSIDERATE:
- We'd like to keep differences between the distributions
- minimal. This both simplifies our maintenance work, as well
- as it helps administrators to move from one distribution to
- another.
+ We are generally do no longer accept distribution specific
+ patches to systemd upstream. If you have to make changes to
+ systemd's source code to make it work on your distribution:
+ unless your code is generic enough to be generally useful we
+ are unlikely to merge it. Please always consider adopting the
+ upstream defaults. If that's not possible please maintain the
+ relevant patches downstream.
- Hence we'd like to ask you to keep your changes minimal, and
- not rename any units without a very good reason (if you need a
- particular name for compatibility reasons, consider using
- alias names via symlinks). Before you make changes that change
- semantics from upstream, please talk to us!
-
- In SysV almost every distribution uses a different
- nomenclature and different locations for the boot-up
- scripts. We'd like to avoid chaos like that with systemd right
- from the beginning. So please, be considerate!
+ Thank you for understanding.
diff --git a/Makefile.am b/Makefile.am
index b11dfb95ef..8f68a10059 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4062,24 +4062,6 @@ if HAVE_KMOD
$(LN_S) ../systemd-modules-load.service systemd-modules-load.service )
endif
-
-if TARGET_FEDORA
- ( cd $(DESTDIR)$(systemunitdir) && \
- rm -f display-manager.service single.service && \
- $(LN_S) rescue.service single.service )
-endif
-
-if TARGET_MANDRIVA
- ( cd $(DESTDIR)$(systemunitdir) && \
- rm -f display-manager.service dm.service single.service && \
- $(LN_S) rescue.service single.service )
-endif
-
-if TARGET_MAGEIA
- ( cd $(DESTDIR)$(systemunitdir) && \
- rm -f display-manager.service )
-endif
-
install-exec-hook: $(INSTALL_EXEC_HOOKS)
uninstall-hook: $(UNINSTALL_DATA_HOOKS) $(UNINSTALL_EXEC_HOOKS)
diff --git a/configure.ac b/configure.ac
index 2f457fc8cf..e6dffe6253 100644
--- a/configure.ac
+++ b/configure.ac
@@ -616,12 +616,12 @@ AC_ARG_WITH(rc-local-script-path-start,
AC_ARG_WITH(rc-local-script-path-stop,
AS_HELP_STRING([--with-rc-local-script-path-stop=PATH],
- [Path to /sbin/halt.local]),
+ [Path to /usr/sbin/halt.local]),
[RC_LOCAL_SCRIPT_PATH_STOP="$withval"],
- [RC_LOCAL_SCRIPT_PATH_STOP="/sbin/halt.local"])
+ [RC_LOCAL_SCRIPT_PATH_STOP="/usr/sbin/halt.local"])
AC_DEFINE_UNQUOTED(RC_LOCAL_SCRIPT_PATH_START, ["$RC_LOCAL_SCRIPT_PATH_START"], [Path of /etc/rc.local script])
-AC_DEFINE_UNQUOTED(RC_LOCAL_SCRIPT_PATH_STOP, ["$RC_LOCAL_SCRIPT_PATH_STOP"], [Path of /sbin/halt.local script])
+AC_DEFINE_UNQUOTED(RC_LOCAL_SCRIPT_PATH_STOP, ["$RC_LOCAL_SCRIPT_PATH_STOP"], [Path of /usr/sbin/halt.local script])
AC_SUBST(RC_LOCAL_SCRIPT_PATH_START)
AC_SUBST(RC_LOCAL_SCRIPT_PATH_STOP)
@@ -697,107 +697,23 @@ AM_CONDITIONAL(ENABLE_MANPAGES, [test "x$have_manpages" = "xyes"])
# ------------------------------------------------------------------------------
-AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO],[Specify the distribution to target: One of fedora, suse, debian, arch, gentoo, slackware, altlinux, mandriva, mageia, angstrom or other]))
-if test "z$with_distro" = "z"; then
- if test "$cross_compiling" = yes; then
- AC_MSG_WARN([Target distribution cannot be reliably detected when cross-compiling. You should specify it with --with-distro (see $0 --help for recognized distros)])
- else
- with_distro=$($GREP '^ID=' /etc/os-release 2>/dev/null | $SED 's/ID=//');
- fi
- if test "z$with_distro" = "z"; then
- with_distro=other
- fi
-fi
-with_distro=`echo ${with_distro} | tr '[[:upper:]]' '[[:lower:]]' `
-AC_DEFINE_UNQUOTED(DISTRIBUTION, ["${with_distro}"], [Target Distribution])
-
# Location of the init scripts as mandated by LSB
SYSTEM_SYSVINIT_PATH=/etc/init.d
SYSTEM_SYSVRCND_PATH=/etc/rc.d
-
M4_DEFINES=
-case $with_distro in
- fedora)
- SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
- AC_DEFINE(TARGET_FEDORA, [], [Target is Fedora/RHEL])
- M4_DEFINES=-DTARGET_FEDORA=1
- ;;
- opensuse|suse)
- SYSTEM_SYSVRCND_PATH=/etc/init.d
- AC_DEFINE(TARGET_SUSE, [], [Target is openSUSE/SLE])
- M4_DEFINES=-DTARGET_SUSE=1
- ;;
- debian)
- SYSTEM_SYSVRCND_PATH=/etc
- AC_DEFINE(TARGET_DEBIAN, [], [Target is Debian])
- M4_DEFINES=-DTARGET_DEBIAN=1
- ;;
- arch)
- SYSTEM_SYSVINIT_PATH=
- SYSTEM_SYSVRCND_PATH=
- AC_DEFINE(TARGET_ARCH, [], [Target is ArchLinux])
- M4_DEFINES=-DTARGET_ARCH=1
- ;;
- gentoo)
- SYSTEM_SYSVINIT_PATH=
- SYSTEM_SYSVRCND_PATH=
- AC_DEFINE(TARGET_GENTOO, [], [Target is Gentoo])
- M4_DEFINES=-DTARGET_GENTOO=1
- ;;
- slackware)
- SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
- AC_DEFINE(TARGET_SLACKWARE, [], [Target is Slackware])
- M4_DEFINES=-DTARGET_SLACKWARE=1
- ;;
- frugalware)
- SYSTEM_SYSVINIT_PATH=/etc/rc.d
- AC_DEFINE(TARGET_FRUGALWARE, [], [Target is Frugalware])
- M4_DEFINES=-DTARGET_FRUGALWARE=1
- ;;
- altlinux)
- SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
- AC_DEFINE(TARGET_ALTLINUX, [], [Target is ALTLinux])
- M4_DEFINES=-DTARGET_ALTLINUX=1
- ;;
- mandriva)
- SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
- AC_DEFINE(TARGET_MANDRIVA, [], [Target is Mandriva])
- M4_DEFINES=-DTARGET_MANDRIVA=1
- ;;
- angstrom)
- SYSTEM_SYSVRCND_PATH=/etc
- AC_DEFINE(TARGET_ANGSTROM, [], [Target is Ångström])
- M4_DEFINES=-DTARGET_ANGSTROM=1
- ;;
- mageia)
- SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
- AC_DEFINE(TARGET_MAGEIA, [], [Target is Mageia])
- M4_DEFINES=-DTARGET_MAGEIA=1
- ;;
- other)
- ;;
- *)
- AC_MSG_ERROR([Your distribution (${with_distro}) is not yet supported, SysV init scripts could not be found! (patches welcome); you can specify --with-distro=other to skip this check])
- ;;
-esac
-
AC_ARG_WITH([sysvinit-path],
[AS_HELP_STRING([--with-sysvinit-path=PATH],
- [Specify the path to where the SysV init scripts are located @<:@default=based on distro@:>@])],
+ [Specify the path to where the SysV init scripts are located])],
[SYSTEM_SYSVINIT_PATH="$withval"],
[])
AC_ARG_WITH([sysvrcd-path],
[AS_HELP_STRING([--with-sysvrcd-path=PATH],
- [Specify the path to the base directory for the SysV rcN.d directories @<:@default=based on distro@:>@])],
+ [Specify the path to the base directory for the SysV rcN.d directories])],
[SYSTEM_SYSVRCND_PATH="$withval"],
[])
-AC_SUBST(SYSTEM_SYSVINIT_PATH)
-AC_SUBST(SYSTEM_SYSVRCND_PATH)
-AC_SUBST(M4_DEFINES)
-
if test "x${SYSTEM_SYSVINIT_PATH}" != "x" -a "x${SYSTEM_SYSVRCND_PATH}" != "x"; then
AC_DEFINE(HAVE_SYSV_COMPAT, [], [SysV init scripts and rcN.d links are supported.])
SYSTEM_SYSV_COMPAT="yes"
@@ -808,26 +724,18 @@ else
SYSTEM_SYSV_COMPAT="no"
fi
+AC_SUBST(SYSTEM_SYSVINIT_PATH)
+AC_SUBST(SYSTEM_SYSVRCND_PATH)
+AC_SUBST(M4_DEFINES)
+
+AM_CONDITIONAL(HAVE_SYSV_COMPAT, test "$SYSTEM_SYSV_COMPAT" = "yes")
+
AC_ARG_WITH([tty-gid],
[AS_HELP_STRING([--with-tty-gid=GID],
[Specify the numeric GID of the 'tty' group])],
[AC_DEFINE_UNQUOTED(TTY_GID, [$withval], [GID of the 'tty' group])],
[])
-AM_CONDITIONAL(TARGET_FEDORA, test x"$with_distro" = xfedora)
-AM_CONDITIONAL(TARGET_SUSE, test x"$with_distro" = xsuse)
-AM_CONDITIONAL(TARGET_DEBIAN, test x"$with_distro" = xdebian)
-AM_CONDITIONAL(TARGET_ARCH, test x"$with_distro" = xarch)
-AM_CONDITIONAL(TARGET_GENTOO, test x"$with_distro" = xgentoo)
-AM_CONDITIONAL(TARGET_SLACKWARE, test x"$with_distro" = xslackware)
-AM_CONDITIONAL(TARGET_FRUGALWARE, test x"$with_distro" = xfrugalware)
-AM_CONDITIONAL(TARGET_ALTLINUX, test x"$with_distro" = xaltlinux)
-AM_CONDITIONAL(TARGET_MANDRIVA, test x"$with_distro" = xmandriva)
-AM_CONDITIONAL(TARGET_ANGSTROM, test x"$with_distro" = xangstrom)
-AM_CONDITIONAL(TARGET_MAGEIA, test x"$with_distro" = xmageia)
-
-AM_CONDITIONAL(HAVE_SYSV_COMPAT, test "$SYSTEM_SYSV_COMPAT" = "yes")
-
AC_ARG_WITH([dbuspolicydir],
AS_HELP_STRING([--with-dbuspolicydir=DIR], [D-Bus policy directory]),
[],
@@ -895,7 +803,6 @@ AC_OUTPUT
AC_MSG_RESULT([
$PACKAGE_NAME $VERSION
- Distribution: ${with_distro}
SysV compatibility: ${SYSTEM_SYSV_COMPAT}
SysV init scripts: ${SYSTEM_SYSVINIT_PATH}
SysV rc?.d directories: ${SYSTEM_SYSVRCND_PATH}
diff --git a/src/cgls/cgls.c b/src/cgls/cgls.c
index ad59c0127f..cfb728bb80 100644
--- a/src/cgls/cgls.c
+++ b/src/cgls/cgls.c
@@ -80,7 +80,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c
index 262e5ffef4..859fa1a906 100644
--- a/src/core/dbus-manager.c
+++ b/src/core/dbus-manager.c
@@ -228,7 +228,6 @@
#define BUS_MANAGER_INTERFACE_PROPERTIES_GENERAL \
" <property name=\"Version\" type=\"s\" access=\"read\"/>\n" \
- " <property name=\"Distribution\" type=\"s\" access=\"read\"/>\n" \
" <property name=\"Features\" type=\"s\" access=\"read\"/>\n" \
" <property name=\"Tainted\" type=\"s\" access=\"read\"/>\n" \
" <property name=\"FirmwareTimestamp\" type=\"t\" access=\"read\"/>\n" \
@@ -526,13 +525,11 @@ static int bus_manager_set_runtime_watchdog_usec(DBusMessageIter *i, const char
static const char systemd_property_string[] =
PACKAGE_STRING "\0"
- DISTRIBUTION "\0"
SYSTEMD_FEATURES;
static const BusProperty bus_systemd_properties[] = {
- { "Version", bus_property_append_string, "s", 0 },
- { "Distribution", bus_property_append_string, "s", sizeof(PACKAGE_STRING) },
- { "Features", bus_property_append_string, "s", sizeof(PACKAGE_STRING) + sizeof(DISTRIBUTION) },
+ { "Version", bus_property_append_string, "s", 0 },
+ { "Features", bus_property_append_string, "s", sizeof(PACKAGE_STRING) },
{ NULL, }
};
diff --git a/src/core/main.c b/src/core/main.c
index dfb53a8438..1ee3c9c0e8 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -1064,7 +1064,6 @@ static int help(void) {
static int version(void) {
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
@@ -1567,7 +1566,7 @@ int main(int argc, char *argv[]) {
if (arg_running_as == SYSTEMD_SYSTEM) {
const char *virtualization = NULL;
- log_info(PACKAGE_STRING " running in system mode. (" SYSTEMD_FEATURES "; " DISTRIBUTION ")");
+ log_info(PACKAGE_STRING " running in system mode. (" SYSTEMD_FEATURES ")");
detect_virtualization(&virtualization);
if (virtualization)
@@ -1577,7 +1576,7 @@ int main(int argc, char *argv[]) {
log_info("Running in initial RAM disk.");
} else
- log_debug(PACKAGE_STRING " running in user mode. (" SYSTEMD_FEATURES "; " DISTRIBUTION ")");
+ log_debug(PACKAGE_STRING " running in user mode. (" SYSTEMD_FEATURES ")");
if (arg_running_as == SYSTEMD_SYSTEM && !skip_setup) {
locale_setup();
diff --git a/src/delta/delta.c b/src/delta/delta.c
index a65cea51bc..9f20938516 100644
--- a/src/delta/delta.c
+++ b/src/delta/delta.c
@@ -362,7 +362,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/detect-virt/detect-virt.c b/src/detect-virt/detect-virt.c
index bbb9dfc19a..bd3ee452c1 100644
--- a/src/detect-virt/detect-virt.c
+++ b/src/detect-virt/detect-virt.c
@@ -80,7 +80,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/hostname/hostnamectl.c b/src/hostname/hostnamectl.c
index e38be89b37..ff1f091776 100644
--- a/src/hostname/hostnamectl.c
+++ b/src/hostname/hostnamectl.c
@@ -406,7 +406,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/journal/cat.c b/src/journal/cat.c
index 523a7a2eda..a95392ccb0 100644
--- a/src/journal/cat.c
+++ b/src/journal/cat.c
@@ -81,7 +81,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/journal/coredumpctl.c b/src/journal/coredumpctl.c
index 4f0ed58397..b6e558186d 100644
--- a/src/journal/coredumpctl.c
+++ b/src/journal/coredumpctl.c
@@ -170,7 +170,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
arg_action = ACTION_NONE;
return 0;
diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
index 4d46beb3fe..a74d43be7f 100644
--- a/src/journal/journalctl.c
+++ b/src/journal/journalctl.c
@@ -202,7 +202,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/locale/localectl.c b/src/locale/localectl.c
index 383a17dee1..5d35f9cdae 100644
--- a/src/locale/localectl.c
+++ b/src/locale/localectl.c
@@ -615,7 +615,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/login/inhibit.c b/src/login/inhibit.c
index 4735df7d3b..9b6613340f 100644
--- a/src/login/inhibit.c
+++ b/src/login/inhibit.c
@@ -210,7 +210,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/login/loginctl.c b/src/login/loginctl.c
index cfbc5fe02b..e2b33a626c 100644
--- a/src/login/loginctl.c
+++ b/src/login/loginctl.c
@@ -1394,7 +1394,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/machine-id-setup/machine-id-setup-main.c b/src/machine-id-setup/machine-id-setup-main.c
index 6373ebc2db..eb2d514855 100644
--- a/src/machine-id-setup/machine-id-setup-main.c
+++ b/src/machine-id-setup/machine-id-setup-main.c
@@ -67,7 +67,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/notify/notify.c b/src/notify/notify.c
index ffc8dfeb9b..f521f56659 100644
--- a/src/notify/notify.c
+++ b/src/notify/notify.c
@@ -94,7 +94,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index b71d5de30a..2ebfff8daf 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -4201,7 +4201,6 @@ static int systemctl_parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/timedate/timedatectl.c b/src/timedate/timedatectl.c
index 6a1c19a574..281c0524da 100644
--- a/src/timedate/timedatectl.c
+++ b/src/timedate/timedatectl.c
@@ -551,7 +551,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;
diff --git a/src/tty-ask-password-agent/tty-ask-password-agent.c b/src/tty-ask-password-agent/tty-ask-password-agent.c
index 052c10e7d5..99a626c6c5 100644
--- a/src/tty-ask-password-agent/tty-ask-password-agent.c
+++ b/src/tty-ask-password-agent/tty-ask-password-agent.c
@@ -688,7 +688,6 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_VERSION:
puts(PACKAGE_STRING);
- puts(DISTRIBUTION);
puts(SYSTEMD_FEATURES);
return 0;