Commit Graph

898 Commits

Author SHA1 Message Date
Peter Alfredsen
276c54e799 build-sys: add CFLAGS to CPP calls
It changes the defines WORDSIZE and __I386, CFLAGS=-m32.
2012-08-08 21:33:42 +02:00
Kay Sievers
81311bbd12 build-sys: link internal selinux lib to systemd-remount-fs 2012-08-08 12:29:54 +02:00
Lennart Poettering
3984d657ff build-sys: typo fix 2012-08-08 12:27:10 +02:00
Lennart Poettering
5a45a93627 build-sys: enable a couple of security features
Most distributions enable these downstream anyway, but it probably makes
sense to enable them unconditionally upstream too.
2012-08-08 12:03:34 +02:00
Lennart Poettering
b2c9cbafb8 units: remove prefdm
It's time to get rid of prefdm. Distributions which still want to use
this should maintain this downstream, but it's probably better to just
provide proper units for the various display managers, like Fedora is
doing this, for example:

https://fedoraproject.org/wiki/Features/DisplayManagerRework
2012-08-07 17:08:31 +02:00
Simon Peeters
f9a3b83bf4 build-sys: do not link systemctl against journal-internal and id128-internal
systemctl does not need the internal journal and id128 libraries to
function, so don't link against them.
2012-08-03 18:20:09 +02:00
Lennart Poettering
18c7ed186b journal: add sd_journal_perror() to API 2012-08-01 19:53:23 +02:00
Zbigniew Jędrzejewski-Szmek
cd8654b13e build-sys: fix path to src/gudev/gudevenumtypes.h
This file is generated, so it should be referred to as
$(top_builddir)/src/gudev/gudevenumtypes.h. It could only appear in
$(top_srcdir) as a result of previous build in $(top_srcdir). Better
to just let automake add the prefix for us, so there's no need to
spell it out.

Remove the prefix from other source files too, $(top_srcdir) is the
default anyway.
2012-07-31 00:28:46 +02:00
Zbigniew Jędrzejewski-Szmek
bd923ff29e build-sys: always create the output directory first
$(MKDIR_P) is added where missing, and rules are standardized on one
form of $(MKDIR_P), to make it easier to spot when it is missing.
Single line $(MKDIR)&&command form is broken into two line form.

https://bugs.freedesktop.org/show_bug.cgi?id=49459

For compilation in a separate build directory to work, when a file is
generated, the rule must include an explicit mkdir first, unless the
file is created at the top level. Even when building in a separate
build-dir, automake would normally create all directories as a side
result of creating the dependencies files. Therefore the bug was only
visible with -C (turning off dependency generation).
2012-07-31 00:27:56 +02:00
Lennart Poettering
bad1837c18 Revert "man: ship systemd-udevd as the real manpage"
We want to keep things uniform, and hence treat udevd's man page like
any other in the repo. What matters is how users primarily interface
with a service, and that is not the binary path in /usr/lib/systemd but
the service name.

This reverts commit 6c1f3ba54a.
2012-07-29 11:58:41 +02:00
Dave Reisner
6c1f3ba54a man: ship systemd-udevd as the real manpage
Instead of making systemd-udevd a so-link to systemd-udevd.service,
ship the real page as systemd-udevd to integrate better with distros
where udevd might be run standalone.
2012-07-28 22:35:41 +02:00
Bryan Kadzban
299031ca8b build-sys: always populate EXTRA_DIST
"make dist" can build a different tarball depending on the flags passed
to ./configure and the (optional) dependencies found on the system.
Move all append-to-EXTRA_DIST operations out of automake conditionals to
fix this.

Introduce a polkitpolicy_files so that the policy files built still
correctly depend on the automake conditionals, but the .in files that
get distributed do not.
2012-07-28 22:35:26 +02:00
Peeters Simon
b5dd874dda build-sys: use correct cpp
this solves issues where $(CPP) has differend include paths than 'cpp'
2012-07-26 16:04:52 +02:00
Michal Schmidt
c37046cd3c build-sys: create ntp-units.d dropin directories on install 2012-07-26 07:47:12 +02:00
Kay Sievers
9bd4457cfa build-sys: man - add missing dependency 2012-07-23 01:58:24 +02:00
Zbigniew Jędrzejewski-Szmek
bf7410e4a7 build-sys: distribute a few more man pages 2012-07-22 23:34:31 +02:00
Zbigniew Jędrzejewski-Szmek
a804b788a8 build-sys: fix (again) index generation in subdir
make-man-index.py doesn't care about .html files, only .xml files, so
the source list was wrong. Also, $(XML_FILES) are specified without
prefix, so compilation in sepearate build-dir was broken:

  GEN    man/index.html
Traceback (most recent call last):
  File "../make-man-index.py", line 24, in <module>
    t = parse(p)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 1183, in parse
    tree.parse(source, parser)
  File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 647, in parse
    source = open(source, "rb")
IOError: [Errno 2] No such file or directory: 'man/systemd.xml'
2012-07-21 07:55:36 +02:00
Lennart Poettering
3fd8953688 build-sys: bump revision of libudev too 2012-07-20 00:40:32 +02:00
Lennart Poettering
c4f1b86299 build-sys: prepare 187 2012-07-20 00:38:02 +02:00
Lennart Poettering
4819ff0358 unit: split off KillContext from ExecContext containing only kill definitions 2012-07-20 00:10:31 +02:00
Kay Sievers
1d57af45cf build-sys: fix variable assignment 2012-07-19 23:07:23 +02:00
Lennart Poettering
57fb9fb56d nspawn: introduce new --link-journal= switch to link container journals into host 2012-07-19 02:02:39 +02:00
Zbigniew Jędrzejewski-Szmek
e5e25a6857 build-sys: put all BUILT_SOURCES in CLEANFILES
Since currently all items in BUILT_SOURCES are also in CLEANFILES,
we can reduce clutter by appending BUILT_SOURCES directly.
2012-07-18 01:36:39 +02:00
Zbigniew Jędrzejewski-Szmek
96bd03d5b8 build-sys: use .DELETE_ON_ERROR
All instances of "|| rm $@" are replaced with .DELETE_ON_ERROR, which
has a similar effect. One difference is that the return code is not
masked by rm return code.

.DELETE_ON_ERROR is GNU-Make specific, but -Wno-portability is already
defined, and it's unlikely that anyone would build systemd with a
shell not supporting .DELETE_ON_ERROR. If they did, then
.DELETE_ON_ERROR would be silently ignored, i.e. in the worst case a
garbage file wouldn't be deleted, which is not very serious.
2012-07-18 01:30:01 +02:00
Kay Sievers
ecca17f6ee man: html - cross-ref man page references and add Index link 2012-07-17 23:04:48 +02:00
Harald Hoyer
e4d9640961 Makefile.am: fixed dependencies for man/index.html 2012-07-17 20:45:20 +02:00
Harald Hoyer
b694b00b45 Makefile.am: MKDIR_P man for man/index.html 2012-07-17 16:42:42 +02:00
Kay Sievers
95769b329e build-sys: distcheck - add seccomp*.h to SOURCES 2012-07-17 16:04:58 +02:00
Lennart Poettering
bc76549dd6 build-sys: use C preprocessor for key list, too 2012-07-17 15:55:53 +02:00
Zbigniew Jędrzejewski-Szmek
cc9f61b815 build-sys: automake needs to know about generated files
CC     src/core/libsystemd_core_la-syscall-list.lo
src/core/syscall-list.c:31:29: fatal error: syscall-to-name.h: No such file or directory
2012-07-17 12:22:16 +02:00
Lennart Poettering
8351ceaea9 execute: support syscall filtering using seccomp filters 2012-07-17 04:17:53 +02:00
Lennart Poettering
6fa9a61092 build-sys: make building of index.html fail sensibly 2012-07-16 19:10:57 +02:00
Lennart Poettering
9c4fa6ed10 min: generate an index page for all man pages
This makes use of python, if it is available
2012-07-16 17:19:39 +02:00
Kay Sievers
4cb72937d3 udev: get rid of TEST_PREFIX and use unshare() to fake /sys, /dev, /run 2012-07-15 22:10:46 +02:00
Kay Sievers
216e2aded6 build-sys: fix "make distcheck" 2012-07-15 15:48:26 +02:00
Lennart Poettering
95694951a0 build-sys: fix build 2012-07-13 23:38:32 +02:00
Lennart Poettering
976c46f84f man: add man page aliases for all macros/types too 2012-07-13 23:10:23 +02:00
Lennart Poettering
a4023a43d0 man: Split sd_randomize(3) from sd_id128_get_{machine,boot}(3)
They have too little to do with each other...
2012-07-13 22:55:52 +02:00
Lennart Poettering
9a1d541663 build-sys: don't install sd-readahead.h as include file, but as documentation
sd-readahead.h is supposed to be a drop-in API, nothing people should
ever link to or could make use without also adding sd-readahead.c to
their sources. Hence, don't install this header file into INCLUDES, but
instead install it as DOCS.
2012-07-13 22:47:46 +02:00
Lennart Poettering
639a6a2529 man: document sd_journal_seek_head() 2012-07-13 22:39:02 +02:00
Lennart Poettering
f4e761c4fc man: document sd_journal_add_match() 2012-07-13 22:18:17 +02:00
Lennart Poettering
e362b3725a man: suppress man page dates/authors in generated pages 2012-07-13 21:54:03 +02:00
Lennart Poettering
24fb2ddc12 build-sys: clean man pages when building them 2012-07-13 21:53:44 +02:00
Lennart Poettering
6ca9571edd man: document sd_journal_get_fd() 2012-07-13 21:03:58 +02:00
Lennart Poettering
4a010f4e6e man: document sd_journal_get_cursor() 2012-07-13 20:39:05 +02:00
Lennart Poettering
b59866aefa man: document sd_journal_get_cutoff_realtime_usec() 2012-07-13 20:17:37 +02:00
Lennart Poettering
7a8a6e8854 man: document sd_journal_get_realtime_usec() 2012-07-13 19:32:11 +02:00
Lennart Poettering
4171a6676c man: document sd_journal_get_data() and friends 2012-07-13 19:00:48 +02:00
Lennart Poettering
67c3cf4f9e man: document sd_journal_next() 2012-07-13 18:28:08 +02:00
Lennart Poettering
3bb55eee6a man: document sd_journal_open() 2012-07-13 15:49:34 +02:00
Lennart Poettering
bd3fa1d243 core: go on a killing spree when transitioning from initrd to main system 2012-07-13 14:41:57 +02:00
Lennart Poettering
95ea1b90cc test: hook up more tests with make check 2012-07-13 13:50:39 +02:00
Lennart Poettering
184850e8a7 man: fix man page chapter in Makefile.am 2012-07-13 02:19:07 +02:00
Lennart Poettering
a81df0ad90 man: document sd_journal_stream_fd() 2012-07-13 02:18:45 +02:00
Lennart Poettering
cb07866b1b man: move header file man pages from section 7 to 3
This way we can include documentation about minor macros/inline function
within the introducionary man page in a sane way.
2012-07-13 01:50:05 +02:00
Zbigniew Jędrzejewski-Szmek
ba961854dd journalctl: show any printable Unicode character
This makes sure we are OK in outputting all valid, non-control UTF-8
characters, instead of just printable 7bit ASCII.
2012-07-13 01:07:41 +02:00
Lennart Poettering
cbdca8525b journal: beef up journal matches considerably
we now can take multiple matches, and they will apply as AND if they
apply to different fields and OR if they apply to the same fields. Also,
terms of this kind can be combined with an overreaching OR.
2012-07-13 00:32:32 +02:00
Lennart Poettering
474abe33bb build-sys: avoid duplicate inclusion of log.c in tools
Before: shared code such as log.c was linked once into the public
libraries (where it is entirely hidden) and once into the various tools
which might use those libraries. This is suboptimal, as this way static
variables such as the maximum log level are instantiated twice in all
tools.

After: our build the public libraries a second time, as a convenience
libary, and link our tools against those. Hence all tools use only a
single instance of everything.
2012-07-13 00:32:32 +02:00
Lennart Poettering
b8156be03f journal: replace implicit flushing of journal by explicit one
The old automatism that the flushing of the journal from /run to /var
was triggered by the appearance of /var/log/journal is broken if that
directory is mounted from another host and hence always available to be
useful as mount point. To avoid probelsm with this, introduce a new unit
that is explicitly orderer after all mounte files systems and triggers
the flushing.
2012-07-11 02:41:16 +02:00
Auke Kok
8401e9f91d MeeGo: Remove build support for MeeGo distribution.
The MeeGo distribution is still a supported distribution, but
will probably not see an updated version of systemd anymore.

Most of the development is focussing on Tizen now, and the
generic support for building --with-distro=other is more than
adequate enough.

This patch removes the support as a custom configuration build
target in systemd. People who are still building this for
the MeeGo distribution should build as "other" distro.
2012-07-09 16:37:46 +02:00
Lennart Poettering
a8eedf4953 man: document sd_print() and friends 2012-07-09 15:46:21 +02:00
Lennart Poettering
1235509582 man: document libsystemd-id128 2012-07-06 21:29:31 +02:00
Lennart Poettering
b32d167503 timedated: replace ntp-units file with an ntp-units.d drop-in dir
To be considered by timedated for NTP a package simply has to drop in
/usr/lib/systemd/ntp-units.d/foobar.list and write one or more unit
names into it. The first one listed is the one that is enabled.
2012-07-03 02:02:13 +02:00
Lennart Poettering
e88dcb8f77 build-sys: bump version 2012-07-02 23:21:51 +02:00
Colin Guthrie
51dfddc2cc units: Rename systemd-udev.service to systemd-udevd.service
This naming convention is more inline with other systemd daemon
unit names (systemd-logind.service, systemd-localed.service etc)

The companion .socket units have also been renamed, however the
-trigger and -settle units keep their current name as these are
not directly related to daemon process itself.
2012-07-02 23:21:51 +02:00
Lennart Poettering
d1f9edafe7 units: rename systemd-debug-shell.service to debug-shell.service
The systemd- prefix for services should be reserved only for services
that invoke our own code rather than generic, external code.
2012-07-02 14:33:04 +02:00
Lennart Poettering
ac7019f33f timedated: replace systemd-timedated-ntp.target logic with simpler scheme
The previous systemd-timedated-ntp.target was suffering by the problem
that NTP implementations enabled via the machanism could not be disabled
the obvious way on the "systemctl disable" command line. Replace
systemd-timedated-ntp.target by a list of implementations we try in
turn. The list is encoded in $pkgdatadir/ntp-units.
2012-07-02 10:43:56 +02:00
Dave Reisner
cc2600642a man: fix incorrectly named manpage for udev service
The service is systemd-udev.service, not systemd-udevd.service.
2012-06-27 22:33:44 +02:00
Lennart Poettering
5231084b47 units: add explicit dependency on display-manager.service to graphical.target
This replaces the symlink based dependency by an explicit one in the
unit file so that we avoid the dangling symlink when no display manager
is installed.
2012-06-27 22:23:16 +02:00
Lennart Poettering
75d67e6837 man: document preset files 2012-06-27 16:29:08 +02:00
Lennart Poettering
ff5d32c875 man: document unit names in systemd-tmpfiles(8) 2012-06-27 15:39:51 +02:00
Lennart Poettering
059b37cc28 man: document fstab generator 2012-06-27 15:27:29 +02:00
Lennart Poettering
f5ccf26ded man: document systemd-update-generator 2012-06-27 15:12:29 +02:00
Lennart Poettering
f220d83cbc man: document getty-generator 2012-06-27 15:03:02 +02:00
Lennart Poettering
8e129f5156 man: document systemd-cryptsetup-generator 2012-06-27 14:51:47 +02:00
Lennart Poettering
45ae1a05f9 man: document /etc/crypttab 2012-06-27 13:23:12 +02:00
Lennart Poettering
d0d6944cdc man: document systemd-cryptsetup 2012-06-27 12:19:35 +02:00
Lennart Poettering
c52f663bfa man: document tty-ask-password-agent 2012-06-27 02:12:39 +02:00
Lennart Poettering
359deb60c2 man: write man page for systemd-analyze 2012-06-27 01:53:07 +02:00
Lennart Poettering
7df46b2af5 man: document systemd-ask-password-console.service and friends 2012-06-27 01:32:15 +02:00
Lennart Poettering
743b8558f6 man: document quotacheck 2012-06-27 01:17:49 +02:00
Lennart Poettering
ee1c0ad436 man: properly document .socket units in man page 2012-06-27 01:06:35 +02:00
Lennart Poettering
a32f224aaf man: document systemd-fsck 2012-06-27 00:37:36 +02:00
Lennart Poettering
56a379a97e man: document the readahead services 2012-06-26 18:16:00 +02:00
Lennart Poettering
0127336c01 man: document systemd-halt.service and friends 2012-06-26 17:50:29 +02:00
Lennart Poettering
e2b696ee9b man: document systemd-suspend.service 2012-06-26 17:33:11 +02:00
Lennart Poettering
11901ad596 man: document systemd-shutdownd 2012-06-26 00:21:13 +02:00
Lennart Poettering
f59e0b6435 man: document systemd-initctl 2012-06-26 00:15:59 +02:00
Lennart Poettering
29f4f5118b man: document systemd-hostnamed 2012-06-26 00:04:50 +02:00
Lennart Poettering
62ce62123d man: document localed 2012-06-25 23:55:35 +02:00
Lennart Poettering
83620960d6 man: document systemd-timedated.service 2012-06-25 22:56:45 +02:00
Lennart Poettering
6b7b92055d man: document systemd-update-utmp-runlevel 2012-06-25 22:07:58 +02:00
Lennart Poettering
a882169a16 man: document systemd-user-sessions.service 2012-06-25 17:34:50 +02:00
Lennart Poettering
448eefeba9 build-sys: make distcheck pass 2012-06-25 15:49:05 +02:00
Lennart Poettering
0e0320e045 units: rename halt/hibernate/kexec/poweroff/reboot/suspend to systed-xxx
These service units also execute our own code, hence rename the
accordingly and prefix them with systemd-
2012-06-25 14:28:50 +02:00
Lennart Poettering
93a1d735ac units: rename fsck@.service to systemd-fsck@.service
The rule is that units that encapsulate our own code are prefixed with
"systemd-". Since the fsck units invoke our own code, hence add the
missing prefix. Since a long long time the fsck units didn't invoke the
naked fsck binaries anymore, and it is unlikely that this well ever
change. On the opposite: the code in systemd-fsck will probably get more
complex over time to handle fsck progress to plymouth forwarding.

Same for quotacheck (but not quotaon!)
2012-06-25 14:28:50 +02:00
Lennart Poettering
ca6b98ae21 man: document systemd-remount-fs.service 2012-06-25 13:08:23 +02:00
Lennart Poettering
edcf89bebe man: document systemd-random-seed-load.service 2012-06-25 12:13:17 +02:00
Lennart Poettering
4aa6e7782a man: document systemd-vconsole-setup.service 2012-06-25 12:00:43 +02:00
Lennart Poettering
013d8a39a6 man: introduce bootup(7) 2012-06-22 23:14:19 +02:00
Lennart Poettering
b0193f1c1f systemctl: automatically turn paths and unescaped unit names into proper unit names
This makes sure that

  systemctl status /home

is implicitly translated to:

  systemctl status /home.mount

Similar, /dev/foobar becomes dev-foobar.device.

Also, all characters that cannot be part of a unit name are implicitly
escaped.
2012-06-22 13:08:48 +02:00
Lennart Poettering
b79f817b1b man: refer to udevd by its service name not binary name
Since the binary name is now hidden away in /usr/lib/ the primary user
handle for the udev service is the unit name, hence change the man page
to be available under the unit name, and make the binary name an alias
for it.
2012-06-22 10:38:40 +02:00
Lennart Poettering
c66e7bc7a1 man: document all kernel command line options we understand 2012-06-22 01:35:52 +02:00
Lennart Poettering
87ce22cc0d readahead: merge three binaries into one
since the binaries share much of the same code and we better load only
one binary instead of two from disk at early boot let's merge the three
readahead binaries into one. This also allows us to drop a lot of
duplicated code.
2012-06-21 23:53:20 +02:00
Lennart Poettering
590f18a27c rpm: include RPM macro definition for .spec snippets
Let's try to standardize a bit the RPM macros used for
installing/uninstalling services.

This only covers the non-SysV compat bits, since that tends to vary
widely between the various distros.

Usage:

Add %{?systemd_requires} to the header of the spec file. And then:

%post
%systemd_post foobar.service

%preun
%systemd_preun foobar.service

%postun
%systemd_postun foobar.service

And, instead of the latter, in case the service shall be restarted on updates:

%postun
%systemd_postun_restart foobar.service
2012-06-21 22:14:17 +02:00
Kay Sievers
b30b426025 libudev: clarify that udev_monitor_receive_device() is non-blocking
Based on a patch from: Sam Thursfield <ssssam@gmail.com>
https://bugs.freedesktop.org/show_bug.cgi?id=51202
2012-06-18 15:58:44 +02:00
Kay Sievers
8e8eb8fbaf udev: always use $(rootprefix)/lib/udev for libexecdir
On Sat, Jun 9, 2012 at 12:46 AM, Malte Starostik <lists@malte.homeip.net> wrote:
> From: Malte Starostik <m-starostik@versanet.de>
>
> Rules get installed in $(libexecdir)/udev/, so are keymaps.  Helper
> binaries go to $(rootprefix)/lib/udev though.  Problem is, in the code,
> both are referenced via UDEVLIBEXECDIR which is defined to the former
> location.  Result: systemd-udev can't find e.g. the keymap binary to
> apply keymaps.
2012-06-10 17:23:43 +02:00
Kay Sievers
26cbf29c52 delete plymouth units; moved to plymouth 2012-06-07 19:27:17 +02:00
Michal Schmidt
ed061a8dc2 units: add systemd-debug-shell.service
If enabled, the service provides a root shell from an early boot. It also
remains active late into shutdown. It is useful for debugging startup and
shutdown problems.

This is the unit referenced in
http://freedesktop.org/wiki/Software/systemd/Debugging#early_debug_shell
2012-06-07 16:33:45 +02:00
Auke Kok
cae544bcdb readahead: Add tool to analyze the contents of the pack file. v3.
This patch adds code to compile 'systemd-readahead-analyze' and install
it into $bindir.

Use this program to parse the contents of the readahead pack file, or
an arbitrary pack file and display which files are listed in it, and
how much of the files are requested to be readahead.

This code is not new - it's partially taken from sreadahead (formerly
maintained by Arjan van der Ven and me, and was originally written
by me), and adapted with the right bits to parse the systemd
readahead pack files, which are slightly different in format.

v2 adds a common READAHEAD_PACK_FILE_VERSION used in all the code
to provide a quick way to assure all these programs are always
synchronized. v3 fixes the integer math.
2012-06-05 22:45:37 +02:00
Kay Sievers
2d1972857b build-sys: release 185 2012-06-04 20:15:16 +02:00
Dave Reisner
7ff5404be1 keymaps: replace dir tokens in keyboard-force-release
Use the correct udev libexec dir as well, not systemd's.
2012-06-02 21:39:39 +02:00
Lennart Poettering
01cf0ca850 man: document systemd-journal 2012-06-01 17:27:15 +02:00
Lennart Poettering
af3bccd6d8 man: write man page for systemd-logind 2012-06-01 17:27:15 +02:00
Matthias Clasen
ddcbc87378 sleep: Don't call execute_directory() on a binary
Probably a copy-paste error, SYSTEMD_SLEEP_BINARY_PATH should
have been SYSTEMD_SLEEP_PATH.
2012-06-01 15:58:21 +02:00
Kay Sievers
477572f5c7 build-sys: split-off D-Bus requires from selinux convenience lib 2012-05-31 22:12:47 +02:00
Lennart Poettering
9393a8774c man: add documentation for the binfmt, modules-load, sysctl services 2012-05-31 16:00:34 +02:00
Lennart Poettering
4c8cd17330 build-sys: prepare release 184 2012-05-31 01:58:01 +02:00
Lennart Poettering
d7e1c95e0a login: properly detect MIMO USB displays
MIMO USB displays use a generic VID/PID for the hub component. With a
bit of trickery we can detect them by the VID/PID of the graphics
component.
2012-05-31 01:20:37 +02:00
Lennart Poettering
ba1261bc02 build-sys: fix built with --disable-logind 2012-05-30 22:25:01 +02:00
Lennart Poettering
069cfc85f8 logind: optionally handle power, sleep and lid switch events
This takes handling of chassis power and sleep keys as well as the lid
switch over from acpid.

This logic is enabled by default for power and sleep keys, but not for
the lid switch.

If a graphical session is in the foreground no action is taken under the
assumption that the graphical session does this.
2012-05-30 15:01:51 +02:00
Lennart Poettering
9262a51946 build-sys: prepare release 183 2012-05-24 15:44:38 +02:00
Lennart Poettering
1897573598 readahead: when doing a system update drop readahead file 2012-05-23 03:50:15 +02:00
Lennart Poettering
d360705f0f system-update: add system update generator
http://freedesktop.org/wiki/Software/systemd/SystemUpdates
2012-05-22 19:48:51 +02:00
Lennart Poettering
6b1dc2bd3c mount: replace PID1 internal fstab parser with generator
Bit by bit we should remove non-unit parsing from PID 1 and move into
generators, to clean up our code base a bit and clearly separate
parsers.
2012-05-22 19:25:17 +02:00
Lennart Poettering
49e7f02774 rescue: don't pull in sockets
In rescue mode let's not establish all sockets, so that we don't end up
starting a lot of additional services automatically.

Instead of pulling in basic.target we now only pull in sysinit.target
which pulls in local-fs.target and swap.target. That way rescue mode has
all the really basic setup around, but normal services are not started
and not autostarted either.
2012-05-22 16:12:25 +02:00
Lennart Poettering
416693175b switch-root: move switch_root() call into its own .c file 2012-05-21 19:33:39 +02:00
Lennart Poettering
27b5482cc0 delta: add systemd-delta tool to find overriden configuration and unit files 2012-05-16 03:24:50 +02:00
Kay Sievers
20bbd54f60 udev: libudev - bump soname, remove deprecated functions, introduce symbol versions 2012-05-15 23:06:26 +02:00
Kay Sievers
0e483bf911 build-sys: fix distcheck 2012-05-15 14:52:53 +02:00
Lennart Poettering
6edd7d0a09 sleep: implement suspend/hibernate as first class targets 2012-05-08 13:54:23 +02:00
Kay Sievers
9eb977db5b util: split-out path-util.[ch] 2012-05-08 02:33:10 +02:00
Kay Sievers
bbc98d3256 util: split-out hwclock.[ch] 2012-05-08 01:57:17 +02:00
Kay Sievers
2c21044f05 util: split-out conf-file.[ch] 2012-05-07 19:01:24 +02:00
Lennart Poettering
eecd1362f7 logind: implement delay inhibitor locks in addition to block inhibitor locks
This is useful to allow applications to synchronously save data before
the system is suspended or shut down.
2012-05-05 00:36:08 +02:00
Lennart Poettering
04b6f7c1a7 rc-local-generator: hook halt-local in based on generator too 2012-05-03 16:00:49 +02:00
Lennart Poettering
7c8fa05c4d unit: add new dependency type RequiresMountsFor=
RequiresMountsFor= is a shortcut for adding requires and after
dependencies to all mount units neeed for the specified paths.

This solves a couple of issues regarding dep loop cycles for encrypted
swap.
2012-04-30 10:52:07 +02:00
Michal Schmidt
e0209d83e7 core: add NOP jobs, job type collapsing
Two of our current job types are special:
JOB_TRY_RESTART, JOB_RELOAD_OR_START.

They differ from other job types by being sensitive to the unit active state.
They perform some action when the unit is active and some other action
otherwise. This raises a question: when exactly should the unit state be
checked to make the decision?

Currently the unit state is checked when the job becomes runnable. It's more
sensible to check the state immediately when the job is added by the user.
When the user types "systemctl try-restart foo.service", he really intends
to restart the service if it's running right now. If it isn't running right
now, the restart is pointless.

Consider the example (from Bugzilla[1]):

sleep.service takes some time to start.
hello.service has After=sleep.service.
Both services get started. Two jobs will appear:
 hello.service/start  waiting
 sleep.service/start  running
Then someone runs "systemctl try-restart hello.service".

Currently the try-restart operation will block and wait for
sleep.service/start to complete.

The correct result is to complete the try-restart operation immediately
with success, because hello.service is not running. The two original
jobs must not be disturbed by this.

To fix this we introduce two new concepts:
- a new job type: JOB_NOP
  A JOB_NOP job does not do anything to the unit. It does not pull in any
  dependencies. It is always immediately runnable. When installed to a unit,
  it sits in a special slot (u->nop_job) where it never conflicts with
  the installed job (u->job) of a different type. It never merges with jobs
  of other types, but it can merge into an already installed JOB_NOP job.

- "collapsing" of job types
  When a job of one of the two special types is added, the state of the unit
  is checked immediately and the job type changes:
  JOB_TRY_RESTART     -> JOB_RESTART or JOB_NOP
  JOB_RELOAD_OR_START -> JOB_RELOAD or JOB_START
  Should a job type JOB_RELOAD_OR_START appear later during job merging, it
  collapses immediately afterwards.
  Collapsing actually makes some things simpler, because there are now fewer
  job types that are allowed in the transaction.

[1] Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=753586
2012-04-25 18:38:27 +02:00
Lennart Poettering
e2875c4693 timedated: introduce systemd-timedated-ntp.target which is controlled by timedated's NTP setting
We shouldn't hardcode the name of the NTP implementation in the
timedated mechanism, especially since Fedora currently switched from NTP
to chrony.

This patch introduces a new target that is enabled/disabled instead of
the actual NTP implementation. The various NTP implementations should
then add .wants/ symlinks to their services and BindTo back to the
target, so that their implementations are started/stopped jointly with
the target.

https://bugzilla.redhat.com/show_bug.cgi?id=815748
2012-04-25 16:49:02 +02:00
Lennart Poettering
2b93b027d3 remount: consolidate remount-api-vfs and remount-rootfs into one
This has the advantage of removing a confusing warning by mount if the
root directory is not listed in fstab.
2012-04-24 16:42:42 +02:00
Lennart Poettering
337eebb936 container: spawn a getty instead of a sulogin in a container 2012-04-22 02:41:18 +02:00
Lennart Poettering
f1e5dfe2c0 nspawn: make /dev/kmsg unavailable in the container, but allow access to /proc/kmsg 2012-04-22 00:32:53 +02:00
Kay Sievers
33e48d472e man: doc-sync - properly delete no longer existing stuff on remote server 2012-04-21 00:28:02 +02:00
Michal Schmidt
75778e21df manager: split transaction.[ch]
manager.c takes care of the main loop, unit management, signal handling, ...
transaction.c computes transactions.

After split:
manager.c:     65 KB
transaction.c: 40 KB
2012-04-20 17:12:27 +02:00
Kay Sievers
80037e4d17 docs: rebase html documentation for online and local use 2012-04-19 19:00:35 +02:00
Kay Sievers
88f642c00b build-sys: move dev-setup to label.la 2012-04-18 16:13:37 +02:00
Kay Sievers
5ba2dc259f udev: unify /dev static symlink setup 2012-04-17 22:31:38 +02:00
Kay Sievers
80a5cbace4 build-sys: silence gtk-doc check, remove gtk-doc options from configure and distcheck 2012-04-17 17:11:02 +02:00
Javier Jardón
92ec4495f7 build-sys: make gtk-doc dependency optional 2012-04-17 17:01:21 +02:00
Kay Sievers
e9a5ef7cdd selinux: unify systemd and udev code 2012-04-17 16:05:28 +02:00
Kay Sievers
9e13dbae50 udev: replace util_create_path() with mkdir_parents() 2012-04-17 01:09:39 +02:00
Kay Sievers
f13b388f97 udev: install udevd as /usr/lib/systemd/systemd-udevd 2012-04-17 00:18:30 +02:00
Kay Sievers
33502ffe2e udev: use startswith() and streq() 2012-04-16 20:54:17 +02:00
Kay Sievers
6ada823a9a udev: remove configuration options for /dev, /sys, /run directories 2012-04-16 19:20:57 +02:00
Lennart Poettering
f8e2fb7b14 logind: add shutdown/suspend/idle inhibition framework 2012-04-16 18:59:08 +02:00
Kay Sievers
20d83f2f43 udev: move all unconditionally installed rules to rules/ 2012-04-14 20:10:03 +02:00
Kay Sievers
8ea5c07b1c udev: keymap - move src/udev/force-release-maps/ to keymaps-force-release/ 2012-04-14 19:53:31 +02:00
Kay Sievers
0b87a07761 udev: test - move test/ and src/test/ 2012-04-14 19:36:47 +02:00
Kay Sievers
7c1d34c5d4 build-sys: silence the xsltproc output 2012-04-14 18:05:06 +02:00
Kay Sievers
690804ca8e build-sys: add 'make doc-sync' target 2012-04-13 23:51:22 +02:00
Kay Sievers
bb061708d5 udev: move libudev, gudev to src/; move gudev/docs/, udev/docs/ to to docs/ 2012-04-13 19:22:06 +02:00
Martin Pitt
84f4fc4215 keymap: Add Dell XPS force-release quirk
https://launchpad.net/bugs/910911
2012-04-13 17:17:22 +02:00
Kay Sievers
9b80f05fb7 udev: unpack sysfs test tree only on 'make check'; fix test-udev binary location 2012-04-13 15:57:13 +02:00
Kay Sievers
56d35ff9ca udev: keymap - move data files to root directory 2012-04-13 15:38:15 +02:00
Kay Sievers
b49d9b50cf udev: fix a few issues detected by the llvm static analyzer 2012-04-13 15:10:12 +02:00
Lennart Poettering
64695e53a0 build-sys: drop systemd- prefix from analyze dir 2012-04-13 13:34:09 +02:00
Kay Sievers
e0eaab7cd1 build-sys: execute test programs with 'make check' 2012-04-13 13:21:20 +02:00
Kay Sievers
0eaeca1f23 udev: use native instead of custom --disable-introspection logic 2012-04-13 12:49:51 +02:00
Kay Sievers
4193534e12 udev: link some systemd parts statically to limit shared libararies dependencies for standalone use 2012-04-13 12:34:35 +02:00
Lennart Poettering
ae572d87c5 build-sys: move systemd-analyze into its own subdir 2012-04-12 20:28:00 +02:00
Kay Sievers
6b8b149a21 udev: properly hook up all tests to 'make check' 2012-04-12 19:25:41 +02:00
Kay Sievers
6cbf079f10 build-sys: use check_PROGRAMS for test-*.c 2012-04-12 19:00:28 +02:00
Kay Sievers
b7739c77df build-sys: remove $(DBUS_LIBS), libsystemd-dbus.la pulls it in 2012-04-12 18:30:24 +02:00
Kay Sievers
43a1ab9b90 pam_systemd: add dbus.la 2012-04-12 18:30:24 +02:00
Lennart Poettering
c0a0872d5c build-sys: move src/linux/ to src/shared/linux 2012-04-12 18:27:35 +02:00
Lennart Poettering
0f4e02c220 build-sys: create top-level directory for bash completion 2012-04-12 18:26:30 +02:00
Lennart Poettering
08e1fb68d7 build-sys: move *-setup out of shared to avoid selinux being pulled in 2012-04-12 18:19:34 +02:00
Kay Sievers
dce818b390 move all tools to subdirs 2012-04-12 17:54:42 +02:00
Lennart Poettering
4fc5568804 machine-id-setup: avoid cyclic dependency, built twice instead 2012-04-12 17:53:19 +02:00
Lennart Poettering
41e5171419 build-sys: split off logs-show into its own convenience library 2012-04-12 17:42:09 +02:00
Lennart Poettering
bd5b0d57ef build-sys: introduce seperate convenience library for dbus stuff 2012-04-12 17:24:58 +02:00
Kay Sievers
d41ba529b4 move libsystemd-id128, libsystemd-daemon to subdir 2012-04-12 15:26:39 +02:00
Kay Sievers
3bdf9c1d0a move remainig shared stuff to shared/ 2012-04-12 15:11:39 +02:00
Lennart Poettering
2c4ff63406 detect-virt: make detect-virt an official command 2012-04-12 14:58:52 +02:00
Kay Sievers
ec1a9f88f2 rename bridge.c to stdio-bridge.c and move to subdir 2012-04-12 14:30:42 +02:00
Lennart Poettering
b6e661357c main: we want all setup functions to be in files called xxx-setup.[ch] 2012-04-12 14:29:29 +02:00
Kay Sievers
90ccc3fca7 move more main systemd parts to core/ 2012-04-12 14:24:40 +02:00
Lennart Poettering
4d89613917 hostname-setup: move to core/ 2012-04-12 14:23:17 +02:00
Lennart Poettering
146de8175e shutdown: move shutdown to core since it replaces PID 1 2012-04-12 14:18:36 +02:00
Lennart Poettering
379079ba6b test: test tools should still be in the src/ directory 2012-04-12 13:48:01 +02:00
Lennart Poettering
08e4738832 build-sys: dbus-loop.h is not used by the core 2012-04-12 13:42:10 +02:00
Lennart Poettering
643a14a527 build-sys: move a few things into more appropriate places 2012-04-12 13:35:56 +02:00
Kay Sievers
6af684ee5c move a couple of test-*.c to test/ 2012-04-12 13:17:41 +02:00
Marc-Antoine Perennou
d5449fdcc5 udev: gudev - rework introspection generation 2012-04-12 13:12:06 +02:00
Kay Sievers
78a825f216 rename machine-id-main.c tomacht the binary and move main.c to core/ 2012-04-12 13:12:06 +02:00
Kay Sievers
f33d3ec1d7 move more common files to shared/ and add them to shared.la 2012-04-12 02:39:37 +02:00
Lennart Poettering
5430f7f2bc relicense to LGPLv2.1 (with exceptions)
We finally got the OK from all contributors with non-trivial commits to
relicense systemd from GPL2+ to LGPL2.1+.

Some udev bits continue to be GPL2+ for now, but we are looking into
relicensing them too, to allow free copy/paste of all code within
systemd.

The bits that used to be MIT continue to be MIT.

The big benefit of the relicensing is that closed source code may now
link against libsystemd-login.so and friends.
2012-04-12 00:24:39 +02:00
Marc-Antoine Perennou
88dc4327e0 udev: fix keymap mkdir 2012-04-11 22:24:53 +02:00
Lennart Poettering
6bb92a169e polkit: temporarily spawn of a polkit agent in terminals for possibly authenticated operations 2012-04-11 20:39:03 +02:00
Kay Sievers
79c077224b put acl.la in 'if HAVE_ACL' and rename acl.[ch] to acl-util.[ch] 2012-04-11 16:47:09 +02:00