Commit graph

2083 commits

Author SHA1 Message Date
Kay Sievers 1aa28c9521 build-sys: bump versions 2015-08-26 16:09:17 +02:00
Lennart Poettering d5972272d2 Merge pull request #888 from keszybz/completions-optional
build-sys: allow skipping installation of completions
2015-08-06 10:18:57 +03:00
Zbigniew Jędrzejewski-Szmek 73974f6768 Merge branch 'hostnamectl-dot-v2'
Manual merge of https://github.com/systemd/systemd/pull/751.
2015-08-05 21:02:41 -04:00
Zbigniew Jędrzejewski-Szmek 8fb4944358 hostname-util: add relax parameter to hostname_is_valid
Tests are modified to check behaviour with relax and without relax.
New tests are added for hostname_cleanup().
Tests are moved a new file (test-hostname-util) because there's
now a bunch of them.

New parameter is not used anywhere, except in tests, so there should
be no observable change.
2015-08-05 20:49:20 -04:00
Zbigniew Jędrzejewski-Szmek a5ba84b7f2 build-sys: allow skipping installation of completions
./configure --with-bashcompletiondir=no or --without-bashcompletiondir
now works as expected. Similarly for zsh.

https://github.com/systemd/systemd/issues/533
2015-08-05 20:16:34 -04:00
Daniel Mack da8ba7219a test: add test for static lists
Test af-list and arphdr-list.
2015-07-31 19:58:27 +02:00
David Herrmann 11811e856b build: bump version to 224
Prepare for bug-fix release and bump versions.
2015-07-31 18:13:57 +02:00
Kay Sievers 8110e144ff sd-boot: stub - export LoaderDevicePartUUID 2015-07-29 19:36:17 +02:00
Kay Sievers 8388607b58 build-sys: fix "make doc-sync" 2015-07-29 18:50:32 +02:00
Kay Sievers 59512f21d7 gpt-auto-generator: merge efi-boot-generator 2015-07-29 18:16:48 +02:00
Kay Sievers e2b6ad0398 build-sys: update git-tar 2015-07-29 15:02:58 +02:00
David Herrmann 39d1a2d05d build: bump version info
Bump version to 223 and increase libsystemd libtool-info as we added a
structure-member (without increasing structure size) to sd-bus-vtable.
2015-07-29 12:44:55 +02:00
David Herrmann d537694a98 terminal: drop unfinished code
This drops the libsystemd-terminal and systemd-consoled code for various
reasons:

 * It's been sitting there unfinished for over a year now and won't get
   finished any time soon.

 * Since its initial creation, several parts need significant rework: The
   input handling should be replaced with the now commonly used libinput,
   the drm accessors should coordinate the handling of mode-object
   hotplugging (including split connectors) with other DRM users, and the
   internal library users should be converted to sd-device and friends.

 * There is still significant kernel work required before sd-console is
   really useful. This includes, but is not limited to, simpledrm and
   drmlog.

 * The authority daemon is needed before all this code can be used for
   real. And this will definitely take a lot more time to get done as
   no-one else is currently working on this, but me.

 * kdbus maintenance has taken up way more time than I thought and it has
   much higher priority. I don't see me spending much time on the
   terminal code in the near future.

If anyone intends to hack on this, please feel free to contact me. I'll
gladly help you out with any issues. Once kdbus and authorityd are
finished (whenever that will be..) I'll definitely pick this up again. But
until then, lets reduce compile times and maintenance efforts on this code
and drop it for now.
2015-07-27 20:15:34 +02:00
David Herrmann 9afd2b46f2 sd-bus: add new test for NameAcquired via proxy/dbus-daemon
This adds test-bus-proxy which should be used to test correct behavior of
systemd-bus-proxyd. The first test that was added is to verify we actually
receive NameAcquired signals for ourselves on bus-connect.
2015-07-16 16:35:09 +02:00
Daniel Mack 42921716a4 Merge pull request #588 from teg/resolved-nsec
resolved: add basic NSEC and NSEC3 support
2015-07-15 17:27:35 -04:00
David Herrmann 7ee7b225bd build: add convenience target 'build-sources'
This target allows to trigger a build of $(BUILT_SOURCES) manually. This
is handy if you tend to use 'make systemd-foobar' to directly build a
single binary. Those do not pull in $(BUILT_SOURCES), unfortunately. See
automake docs for that.
2015-07-15 15:36:54 +02:00
Tom Gundersen 5ffa42cb80 basic: add a Bitmap implementation
For when a Hashmap is overkill.
2015-07-14 21:53:10 +02:00
Daniel Mack 5f402ae84b resolved: move LLMNR related functions into separate file 2015-07-13 11:28:29 -04:00
Michael Biebl 6f068aef44 build-sys: Do not install README.md as end-user documentation
This file is mostly GitHub glue and not particularly useful to
end-users. So only add it to the dist tarball but do not install it as
documentation.
2015-07-08 22:27:27 +02:00
Lennart Poettering 008c1d3b84 Merge pull request #515 from xnox/no-dot-files
automake: Do not install developer files on end-user systems.
2015-07-08 12:46:49 -03:00
Dimitri John Ledkov 318b0fd7af automake: Do not install developer files on end-user systems.
autogen.sh, .dir-locals.el, .vimrc, .ycm_extra_conf.py, .travis.yml,
.mailmap files are only useful with the source tree, for the
developers. Do not install these files as documentation on the
end-user systems, but keep them distributed with the tarball.
2015-07-08 13:20:07 +01:00
Zbigniew Jędrzejewski-Szmek 2799e519ca Remove python-systemd
python-system has moved to it's own repository:
https://github.com/systemd/python-systemd
2015-07-06 20:32:12 -04:00
Kay Sievers 44a3d8cb6e build-sys: bump sonames 2015-07-05 16:10:47 +02:00
Zbigniew Jędrzejewski-Szmek e4f42f9d1e build-sys: use wildcard glob in update-man-list again
The idea is that after adding a new man page, make update-man-list
will be used to regenerate part of the makefile. So the data already
present in the makefile cannot be used to do that.

Also, renames filter out generated xml files in make-man-rules.py
itself in order to make Makefile.am a bit simpler, and rename files
to dist_files to better reflect new meaning.
2015-06-30 09:56:44 -04:00
Bastien Nocera 0051ebf7e5 udev: Remove accelerometer helper
It's moved to the iio-sensor-proxy D-Bus service.
2015-06-27 21:48:52 +02:00
Greg Kroah-Hartman 57a2bf2329 Merge pull request #353 from kaysievers/hid
rules: remove all power management from udev
2015-06-26 09:51:11 -07:00
Peter Hutterer 0530459245 Revert "hwdb: add a touchpad hwdb"
The main purpose of this hwdb was to tag touchpads that have the physical
trackstick buttons wired to the touchpad (Lenovo Carbon X1 3rd, Lenovo *50
series).  This hwdb is not required on kernels 4.0 and above, the kernel now
re-routes button presses through the trackstick's device node. Userspace does
not need to do anything.

See kernel commit cdd9dc195916ef5644cfac079094c3c1d1616e4c.

This reverts commit 001a247324.
2015-06-26 16:09:48 +10:00
Lennart Poettering 4cd51a7fe5 Merge pull request #347 from poettering/check-api-docs
build-sys: make sure check-api-docs sees each symbol just once
2015-06-24 08:40:09 -04:00
Kay Sievers e2452eef02 rules: remove all power management from udev
It is not udev's task to apply any of these setting that way, or
from udev rules files. Things need to be sortet out in the kernel,
or explicit whitelist can possibly be added to the hardware database.
Until that is sorted out, and general agreement, udev is not
willing to maintain any such lists or power management settings
in general.

"Thanks for digging this out! I thought my Kinesis keyboard got broken
and ordered a new one, only to find out that the new one doesn't work
as well. I'm not sure whether we should start collecting a blacklist
of keyboards which don't work with USB autosuspend, or rather a
whitelist? Or revert this wholesale?"

  https://github.com/systemd/systemd/issues/340
2015-06-24 13:18:53 +02:00
Lennart Poettering b7b85f227c build-sys: make sure check-api-docs sees each symbol just once
Given that some symbols are exposed by multiple libraries (due to the
compatibility libraries), let's ensure "make check-api-docs" only shows
each symbol once by filtering out duplicates.
2015-06-23 19:13:07 -04:00
Kay Sievers 2c8849add4 build-sys: add all source files and no built files to the tar ball
This fully synchronizes the content of a "make dist" and a "git archive"
tar ball.

  http://lists.freedesktop.org/archives/systemd-devel/2015-June/033214.html
2015-06-23 12:43:15 +02:00
Kay Sievers d30449bd76 build-sys: let "make git-tar" archive HEAD 2015-06-23 00:49:34 +02:00
Kay Sievers 5aaf87682e build-sys: remove $(NULL) 2015-06-22 23:27:08 +02:00
Kay Sievers 6f58d70e31 build-sys: add custom "make git-tar" target 2015-06-22 23:08:55 +02:00
Tom Gundersen 013e5e7ddf Merge pull request #285 from poettering/audit-table-fix
Audit table fix
2015-06-18 18:38:40 +02:00
Lennart Poettering 07ba233e9e audit: make sure to include libaudit-defined audit events in table
This change hooks up $(audit_list_includes) that was already
defined since the beginning of the audit type list, but never actually
made use of.

It thus completes 4733607eec.
2015-06-18 13:41:09 +02:00
Martin Pitt 65d21ff344 build-sys: don't dist man/systemd.directives.xml
It depends on man/custom-entities.ent which is (and needs to be) a built file,
so we need to always build man/systemd.directives.xml as well.

We also need to drop this from update-man-list so that it doesn't get disted
from Makefile-man.am.

Fixes distcheck failure.

https://github.com/systemd/systemd/issues/215
2015-06-18 09:51:37 +02:00
Daniel Mack 4584eaea92 build-sys: make SOURCE_XML_FILES array relative to $(top_srcdir)
When calling the build commands from another directory than the toplevel:

  mkdir build
  cd build
  ../configure [...]

... the compilation fails with the following error:

 GEN      man/systemd.directives.xml
Traceback (most recent call last):
  File "../tools/make-directive-index.py", line 313, in make_page
    _extract_directives(directive_groups, formatting, page)
  File "../tools/make-directive-index.py", line 191, in _extract_directives
    t = xml_parse(page)
  File "/home/martin/upstream/systemd/tools/xml_helper.py", line 30, in xml_parse
    doc = tree.parse(page, _parser)
  File "lxml.etree.pyx", line 3301, in lxml.etree.parse (src/lxml/lxml.etree.c:72453)
  File "parser.pxi", line 1791, in lxml.etree._parseDocument (src/lxml/lxml.etree.c:105915)
  File "parser.pxi", line 1817, in lxml.etree._parseDocumentFromURL (src/lxml/lxml.etree.c:106214)
  File "parser.pxi", line 1721, in lxml.etree._parseDocFromFile (src/lxml/lxml.etree.c:105213)
  File "parser.pxi", line 1122, in lxml.etree._BaseParser._parseDocFromFile (src/lxml/lxml.etree.c:100163)
  File "parser.pxi", line 580, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:94286)
  File "parser.pxi", line 690, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:95722)
  File "parser.pxi", line 618, in lxml.etree._raiseParseError (src/lxml/lxml.etree.c:94754)
OSError: Error reading file 'man/bootup.xml': failed to load external entity "man/bootup.xml"

That is because the file names in the XML_FILES array are not relative
to $(top_srcdir), and hence ../tools/make-directive-index.py is called
with non-existant arguments.

To fix this, call patsubst when generating SOURCE_XML_FILES from
NON_INDEX_XML_FILES.
2015-06-18 08:20:03 +02:00
Lennart Poettering 561471314c build-sys: bump versions and sonames 2015-06-18 00:28:41 +02:00
Kay Sievers 1b09f548c7 turn kdbus support into a runtime option
./configure --enable/disable-kdbus can be used to set the default
behavior regarding kdbus.

If no kdbus kernel support is available, dbus-dameon will be used.

With --enable-kdbus, the kernel command line option "kdbus=0" can
be used to disable kdbus.

With --disable-kdbus, the kernel command line option "kdbus=1" is
required to enable kdbus support.
2015-06-17 18:01:49 +02:00
Kay Sievers a54941f1b4 Merge pull request #256 from kaysievers/wip
libsystemd: remove list of symbols to export only in the future
2015-06-17 17:18:10 +02:00
Michael Biebl 40af96f692 build-sys: restore systemshutdowndir substitution
This was accidentally removed in d6b07ef.
2015-06-17 16:37:59 +02:00
Kay Sievers 73a7e4615d libsystemd: remove list of symbols to export only in the future 2015-06-17 16:21:13 +02:00
Kay Sievers aac7c5ed8b build-sys: hide magic section variables from exported symbols
https://github.com/systemd/systemd/issues/234
2015-06-17 07:29:15 +02:00
Lennart Poettering 78ed65ac8d Merge pull request #212 from poettering/gc-machine-snapshots
automatically remove old machine shapshots at boot
2015-06-15 20:33:35 +02:00
Lennart Poettering 770b5ce4fc tmpfiles: automatically remove old machine snapshots at boot
Remove old temporary snapshots, but only at boot. Ideally we'd have
"self-destroying" btrfs snapshots that go away if the last last
reference to it does. To mimic a scheme like this at least remove the
old snapshots on fresh boots, where we know they cannot be referenced
anymore. Note that we actually remove all temporary files in
/var/lib/machines/ at boot, which should be safe since the directory has
defined semantics. In the root directory (where systemd-nspawn
--ephemeral places snapshots) we are more strict, to avoid removing
unrelated temporary files.

This also splits out nspawn/container related tmpfiles bits into a new
tmpfiles snippet to systemd-nspawn.conf
2015-06-15 19:28:55 +02:00
Cristian Rodríguez e1ada21e92 buildsys: missing SECCOMP_CFLAGS in various places
libcore, systemd and nspawn fail to build when seccomp headers
are not in the include path.
2015-06-15 13:36:51 -03:00
Daniel Mack e5a774bbfa Merge pull request #202 from victorenator/l10n-be
l10n: Add Belarusian translation
2015-06-15 14:17:38 +02:00
Daniel Mack 12c2884c55 firewall: rename fw-util.[ch] → firewall-util.[ch]
The names fw-util.[ch] are too ambiguous, better rename the files to
firewall-util.[ch]. Also rename the test accordingly.
2015-06-15 14:08:02 +02:00
Viktar Vauchkevich a220f3583c l10n: Add Belarusian translation 2015-06-15 00:13:43 +03:00
Kay Sievers 9afc1aacfe build-sys: include libsystemd-journal and libudev in libshared 2015-06-14 20:03:44 +02:00
David Herrmann f3a8f45b21 Merge pull request #191 from kaysievers/resolv
build-sys: merge convenience library libresolve
2015-06-14 13:09:06 +02:00
David Herrmann 6113cec066 Merge pull request #189 from teg/rtnl-rename
Rename sd_rtnl to sd_netlink to prepare for further netlink-protocol support. Anything rtnl specific still uses the sd_rtnl prefix, but the generic parts (including the bus and message objects) are now called sd_netlink.
2015-06-14 13:07:20 +02:00
Kay Sievers b3d5018b02 build-sys: merge convenience library libresolve 2015-06-14 12:54:27 +02:00
Kay Sievers 8c8302a66e build-sys: simplify lib dependencies 2015-06-14 12:26:09 +02:00
Tom Gundersen 89489ef7d4 sd-netlink: message - split up source file
Split netlink-socket.c and rtnl-message.c from netlink-message.c.
2015-06-13 21:11:01 +02:00
Tom Gundersen 1c4baffc18 sd-netlink: rename from sd-rtnl 2015-06-13 19:52:54 +02:00
Ronny Chevalier cca91b41d9 Merge pull request #164 from l10n-tw/master
Add zh_TW translation.
2015-06-12 15:02:00 +02:00
Jeff Huang ea01a90df4 po,catalog: add zh_TW translation. 2015-06-12 20:52:15 +08:00
Kay Sievers a095315b3c build-sys: split internal basic/ library from shared/
basic/      can be used by everything
            cannot use anything outside of basic/

libsystemd/ can use basic/
            cannot use shared/

shared/     can use libsystemd/
2015-06-11 10:52:46 +02:00
Lennart Poettering 6f45f8ca76 Merge pull request #152 from zonque/buildsys
build-sys: make man/systemd.directives.xml depend on man/custom-entit…
2015-06-10 23:02:23 +02:00
Lennart Poettering ad091530b3 Merge pull request #151 from mischief/dns-shared-3
move dns code from resolve to shared v3
2015-06-10 20:43:06 +02:00
Daniel Mack 747ca69b5d build-sys: make man/systemd.directives.xml depend on man/custom-entities.ent
Currently, the following command sequence fails:

  make distclean
  ./autogen.sh c
  make distcheck

That's because the command invoked to build man/systemd.directives.xml needs
man/custom-entities.ent to function, which itself isn't a dependency.

The $(filter-out $<,$^) logic used to filter out everything from the
prerequisites except for the first word, which doesn't work anymore
now. Use $(SOURCE_XML_FILES) instead.
2015-06-10 20:42:56 +02:00
Mike Gilbert 4061eed4d9 Include tools/compile-unifont.py in the source tarball
This prevents a build failure when /usr/share/fonts/unifont/unifont.hex
is newer than unifont-glyph-array.bin.
2015-06-10 20:30:42 +02:00
Nick Owens 4ad7f2761d resolve: move dns routines into shared 2015-06-10 11:15:45 -07:00
Martin Pitt 3712e1249b build-sys: always dist *.policy.in files
Unconditionally dist org.freedesktop.{import1,machine1}.policy.in, like all the
other *.policy.in files. This avoids missing policy files in the tarball.

Spotted by "make distcheck" failure with --disable-importd.
2015-06-09 14:01:06 +02:00
Kay Sievers 2b4919a68c build-sys: disable gc-sections if optimization is disabled
This way, development builds will not rely on gc-sections to
paper over cyclic link dependencies. Newly introduced broken
link requirements will immediatley fail.
2015-06-03 17:38:26 +02:00
Kay Sievers 4142554fcd build-sys: split off libsystemd-machine convenience lib
Break the link order cycle by splitting off the machine parts which
use sd-bus but live in shared/.
2015-06-03 14:46:11 +02:00
Kay Sievers 42fcc4d258 build-sys: merge libsystemd-label convenience lib
Stop to pretend that we can split selinux related code from other.
We have too many cross-references and it breaks all the time and
I am no longer willing to maintain that mess for no real benefit.

We currently have cyclic dependencies which are only resolved on
machines with gc-sections toolchains. We need a simpler and at the
same time more strict model to manage our convenienc libraries and
linking.

The first thing to give up is the "optimization" of not linking
libselinux for a very few tools. If that is an issue, please fix
the mess that libselinux creates in selinux itself, and do not ask
consumers to work around it.
2015-06-03 14:23:03 +02:00
Kay Sievers 36f5e964de build-sys: disable gc-sections for distcheck
We cannot rely on gc-sections to fix dependency cycles in our linking
setup. Disable it for distcheck to let it fail and find these bugs
earlier.
2015-06-03 03:17:01 +02:00
Kay Sievers 7a17c2cc40 build-sys: remove left-over gtk-doc 2015-06-03 02:36:40 +02:00
Kay Sievers 2375607039 remove gudev and gtk-doc
The library moved to:
  https://git.gnome.org/browse/libgudev/
2015-06-03 00:22:53 +02:00
Ronny Chevalier 0763adbed5 tests: add test-conf-parser 2015-05-30 11:19:35 +02:00
Daniel Mack 0689798a90 Revert "Makefile: make custom-entities.ent depend on Makefile.am"
This reverts commit 6096d9cc. As discussed on the mailing list, we
should accept some formal incorrectness in the dependency here, and
not rebuild the man pages every time Makefile.am changes - xsltproc
is simply too expensive.

Instead, let's move man/custom-entities.ent from DISTCLEANFILES to
CLEANFILES, so a 'make clean' is sufficient to actually make changes
in Makefile.am efficient for the contents of the man pages.
2015-05-30 01:04:18 +02:00
Lennart Poettering 24882e06c1 util: split out signal-util.[ch] from util.[ch]
No functional changes.
2015-05-29 20:14:11 +02:00
Martin Pitt 2fe9e87a24 build-sys: pass originally configured --enable-split-usr to distcheck
Previously we always ran distcheck with --disable-split-usr. This caused
test-path-util to fail with

  Assertion 'fsck_exists("minix") == 0' failed at ../src/test/test-path-util.c:224, function test_fsck_exists(). Aborting.

as looking up fsck.minix would only look into DEFAULT_PATH_NORMAL, but on these
systems fsck is in /sbin/.
2015-05-29 16:40:41 +02:00
Karel Zak 144b1b4b34 build-sys: fix typo
There is nothing like systemd_verify_* in Makefile.am. The bug has
been invisible because automake uses the default CFLAGS when component
CFLAGS are undefined.
2015-05-29 13:55:02 +02:00
Martin Pitt e37f6d6134 build-sys: Stop depending on current configure options for EXTRA_DIST
Consistently move EXTRA_DIST out of conditional blocks. This would have
produced incomplete dist tarballs when being run in a built tree with not
every feature enabled, which can cause broken dist tarballs.
2015-05-29 12:21:44 +02:00
Daniel Mack 6096d9ccc3 Makefile: make custom-entities.ent depend on Makefile.am
When Makefile.am is modified, make sure custom-entities.ent is rebuilt.
After all, $(substitutions) is defined there, so changes of that variable
must be reflected in the resulting file.
2015-05-29 12:00:58 +02:00
Martin Pitt 0f0467e63b systemctl: drop hardcoded chkconfig invocation
Introduce /usr/lib/systemd/systemd-sysv-install [--root=] <action> <name>
abstraction, replacing the direct calling of chkconfig. This allows
distributions to call their specific tools like update-rc.d without patching
systemd.

Ship systemd-sysv-install.SKELETON as an example for packagers how to implement
this.

Drop the --enable-chkconfig configure option.

Document this in README and point to it in NEWS.
2015-05-28 19:42:45 +02:00
Filipe Brandenburger d31dd62ba2 man: use configured path for mount and umount binaries in manpages
Export the MOUNT_PATH and UMOUNT_PATH variables as XML entities and use them in
the systemctl.1 manpage instead of hardcoding the path in /usr/bin.

Tested:
- Ran ./configure ac_cv_path_MOUNT_PATH=/bin/mount (same for umount) and
  rebuilt the manpages, confirmed that the correct path was in man/systemctl.1
- Rebuilt man/systemd.directives.xml and the man pages derived from it,
  confirmed that the correct paths were there as well.
2015-05-28 19:28:23 +02:00
Martin Pitt db47294f41 build-sys: ship fsck mock in tarball
Useful for downstream integration test cases.
2015-05-26 07:16:00 +02:00
Marc-Antoine Perennou 49f582c0a0 build-sys: fix headers installation 2015-05-25 17:04:43 +02:00
Marc-Antoine Perennou ee3c31bf69 build-sys: don't dist generated files
[tomegun: fix
   Makefile.am:5675: warning: nodist_systemd_resolved_SOURCES multiply defined in condition ENABLE_RESOLVED]
2015-05-25 17:03:30 +02:00
Marc-Antoine Perennou f80099c06f build-sys: always include src/boot/efi in tarballs
currently it would only be included if configure was ran with --enable-gnuefi
2015-05-25 16:56:29 +02:00
Mike Gilbert 77eb82f9f0 shared: generator - correct path to systemd-fsck
In generated systemd-fsck-root.service. This would break if rootprefix
is not /usr/lib/systemd.

[tomegun: flesh out commit message]
2015-05-24 22:44:29 +02:00
Lennart Poettering 882897afee sd-bus,sd-event: make public APIs
With the v221 release these APIs should be public, stable APIs, hence
let's install their headers by default now, and add their symbols to the
.sym file.
2015-05-22 14:32:51 +02:00
Lennart Poettering 2651106252 build-sys: fix build with seperate builddir
Let's make sure we can build rpms with this
2015-05-21 21:59:42 +02:00
Lennart Poettering 4f9bca639a build-sys: bump library and package versions 2015-05-21 20:10:26 +02:00
Lennart Poettering 958b66ea16 util: split all hostname related calls into hostname-util.c 2015-05-18 17:10:07 +02:00
Mantas Mikulėnas 06ee4910e4 buildsys: actually install 70-pointingstick.hwdb 2015-05-18 05:22:09 -04:00
Cristian Rodríguez 0dfb89d3c2 buildsys: Remove X_SERVER from AM_CPPFLAGS
It is a leftover from multi-seat-x wrapper which is long
gone.
2015-05-16 12:04:46 -04:00
Tom Gundersen b5acb956d1 units: make networkd pull in its own .busname unit
The daemon requires the busname unit to operate (on kdbus systems),
since it contains the policy that allows it to acquire its service
name.

This fixes https://bugs.freedesktop.org/show_bug.cgi?id=90287
2015-05-15 22:59:43 +02:00
Jan Synacek 57ab2eabb8 systemctl: introduce --now for enable, disable and mask
https://bugs.freedesktop.org/show_bug.cgi?id=42940
2015-05-15 11:59:36 +02:00
Dimitri John Ledkov f00929ad62 Default to /usr/bin/u?mount, configurable, rather than hard-coded /bin/u?mount. 2015-05-13 15:48:28 +02:00
Cristian Rodríguez 7e273016de buildsys: *_la_CPPFLAGS takes $(AM_CPPFLAGS) not $(AM_CFLAGS) 2015-05-09 19:12:12 +02:00
Colin Walters cd2eb9e942 lockfile-util.[ch]: Split out from util.[ch]
Continuing the general trend of splitting up util.[ch].  I specifically
want to reuse this code in https://github.com/GNOME/libglnx and
having it split up will make future copy-pasting easier.
2015-05-05 22:35:29 -04:00
Tom Gundersen a9beb123d1 test: rename test-bus-kernel-benchmark to test-bus-benchmark
This can now benchmark more than just kdbus.
2015-04-29 17:08:31 +02:00
Lennart Poettering 96d9117ad2 fsck: remove fsckd again, but keep the door open for external replacement
For a longer discussion see this:

http://lists.freedesktop.org/archives/systemd-devel/2015-April/030175.html

This introduces /run/systemd/fsck.progress as a simply
AF_UNIX/SOCK_STREAM socket. If it exists and is connectable we'll
connect fsck's -c switch with it. If external programs want to get
progress data they should hence listen on this socket and will get
all they need via that socket. To get information about the connecting
fsck client they should use SO_PEERCRED.

Unless /run/systemd/fsck.progress is around and connectable this change
reverts back to v219 behaviour where we'd forward fsck output to
/dev/console on our own.
2015-04-28 17:30:00 +02:00
Daniel Mack d6b07ef796 shutdownd: kill the old implementation
Not that all functionality has been ported over to logind, the old
implementation can be removed. There goes one of the oldest parts of
the systemd code base.
2015-04-24 17:48:12 +02:00
Daniel Mack e2fa5721c3 logind: add code for UTMP wall messages
Add a timer to print UTMP wall messages so that it repeatedly informs users
about a scheduled shutdown:

 * every 1 minute with less than 10 minutes to go
 * every 15 minutes with less than 60 minutes to go
 * every 30 minutes with less than 180 minutes (3 hours) to go
 * every 60 minutes if more than that to go

This functionality only active if the .EnableWallMessages DBus property
is set to true. Also, a custom string can be added to the wall message,
set through the WallMessagePrefix property.
2015-04-24 17:48:12 +02:00
Zbigniew Jędrzejewski-Szmek 8bb3626dac journal: use audit event names instead of numbers
<audit-1400> is replaced by AVC, etc.

A fallback mechanism is provided for unlisted event types.
Occasionally new types are added to the kernel, but not too often.

Add a simple "test", which simply prints the mapping.
2015-04-23 23:54:21 -04:00
Zbigniew Jędrzejewski-Szmek 4733607eec journal: add int↔audit type name mapping 2015-04-23 23:54:21 -04:00
Kay Sievers 58a26e1269 build-sys: adjust link-order for non-gc-sections build 2015-04-22 22:10:28 +02:00
Lennart Poettering 2f4d3bb91f build-sys: minor simplification 2015-04-22 14:05:24 +02:00
Lennart Poettering 3bd3150367 build-sys: move systemd.pc from pkgconfiglibdir back into pkgconfigdatadir
The original idea of systemd.pc was to contain arch-independent system
and systemd information. By exposing libdir as part of the fields (added
in eb39a6239c), it started to carry
arch-dependent data, thus breaking multilib systems. It was then moved
to pkgconfiglibdir to deal with this (in
aec432c613), but actually the right
approach is to simply not include libdir in the .pc file at all.

THis patch hence more or less reverts both commits again, and moves the
.pc file back into pkgconfigdatadir.

As alternative for querying the systems primary libdir there's now
"systemd-path system-library-arch", hence a more correct alternative
exists for querying this variable from the .pc file.
2015-04-21 20:35:17 +02:00
Kay Sievers 73e21667cb build-sys: add missing file 2015-04-21 19:48:23 +02:00
Kay Sievers 8f1e0c5f38 delete unused LICENSE.MIT 2015-04-21 19:21:56 +02:00
Lennart Poettering fed2b07ebc tmpfiles: make /home and /var btrfs subvolumes by default when booted up with them missing
This way the root subvolume can be left read-only easily, and variable
and user data writable with explicit quota set.
2015-04-21 17:43:55 +02:00
Tom Gundersen c32eb440ba libudev: make libudev-enumerate a thin wrapper around sd-device 2015-04-16 16:47:23 +01:00
Tom Gundersen 96df036fe3 sd-device: add device-enumerator library 2015-04-16 16:47:23 +01:00
Marc-Antoine Perennou c4a77bcb9a build: allow setting OBJCOPY 2015-04-11 12:48:18 +02:00
Marc-Antoine Perennou 0a5d1ed9b5 factory: install to datadir 2015-04-11 12:39:53 +02:00
Koen Kooi 684edf2e19 build: add support for AARCH64 EFI
Aarch64 and ARM32 lack an EFI capable objcopy, so use the ldflags + -O
binary trick gnu-efi and the Red Hat shimloader are using.

(David: rebase to systemd-git and added EFI_ prefixes)
2015-04-11 12:09:56 +02:00
Koen Kooi 32ef61b888 build: support non-x86 EFI builds
Move the no-mmx/no-sse CFLAGS to X86-64 and IA32 defines in preparation
for ARM32 and Aarch64 support.
2015-04-11 11:39:29 +02:00
Peter Hutterer 51c0c28698 udev: builtin-keyboard: add support for EVDEV_ABS_*
Parse properties in the form
EVDEV_ABS_00="<min>:<max>:<res>:<fuzz>:<flat>"

and apply them to the kernel device. Future processes that open that device
will see the updated EV_ABS range.

This is particularly useful for touchpads that don't provide a resolution in
the kernel driver but can be fixed up through hwdb entries (e.g. bcm5974).

All values in the property are optional, e.g. a string of "::45" is valid to
set the resolution to 45.

The order intentionally orders resolution before fuzz and flat despite it
being the last element in the absinfo struct. The use-case for setting
fuzz/flat is almost non-existent, resolution is probably the most common case
we'll need.

To avoid multiple hwdb invocations for the same device, replace the
hwdb "keyboard:" prefix with "evdev:" and drop the separate 60-keyboard.rules
file. The new 60-evdev.rules is called for all event nodes
anyway, we don't need a separate rules file and second callout to the hwdb
builtin.
2015-04-11 08:44:33 +10:00
Ronny Chevalier 288a74cce5 shared: add terminal-util.[ch] 2015-04-11 00:34:02 +02:00
Ronny Chevalier 3df3e884ae shared: add random-util.[ch] 2015-04-11 00:11:13 +02:00
Ronny Chevalier 0b452006de shared: add process-util.[ch] 2015-04-10 23:54:49 +02:00
Lennart Poettering 4a280a7e78 util: add minimal OrderedSet type
OrderedSet implements a Set-like structure, but maintains insertion
ordered. It is hence to Set what OrderedHashmap is for Hashmap.

Internally, this is only a wrapper around OrderedHashmap for now, but
this could one day be improved and be added to hashmap.c natively.
2015-04-08 17:22:15 +02:00
Zbigniew Jędrzejewski-Szmek 84d325800e build-sys: fix typo 2015-04-06 15:44:55 -04:00
Lennart Poettering d9e2daaf3d btrfs: support recursively removing btrfs snapshots 2015-04-06 11:28:16 +02:00
Lennart Poettering c687863750 util: rework rm_rf() logic
- Move to its own file rm-rf.c

- Change parameters into a single flags parameter

- Remove "honour sticky" logic, it's unused these days
2015-04-06 10:57:53 +02:00
Tom Gundersen f4ac4d1a82 libudev: device - replace by a thin wrapper around sd-device 2015-04-02 00:18:27 +02:00
Tom Gundersen 57fa1d094c libsystemd: add sd-device library
This provides equivalent functionality to libudev-device, but in the
systemd style. The public API only caters to creating sd_device objects
from for devices that already exist in /sys, there is no support for
listening for monitoring events or creating devices received over
the udev netlink protocol.

The private API contains the necessary functionality to make sd-device
a drop-in replacement for libudev-device, but which we would not
otherwise want to export.
2015-04-02 00:18:27 +02:00
Kay Sievers 16c6ea2934 timedate: remove daylight saving time handling and tzfile parser
We planned to support (the conceptually broken) daylight saving
time/local time features in the kernel, SCSI, networking, FAT
filesystem, but it turned out to be a race we cannot win and do
not want to get involved. Systemd should not fiddle with daylight
saving time or parse timezone information itself.

Leave everything to glibc or tools like date(1) and do not make any
promises or raise expectations that systemd should handle anything
like this.
2015-03-24 15:03:36 +01:00
Dimitri John Ledkov 79365fda67 hwdb: ship ids-update.pl & sdio.ids in the release tarballs
This makes it easier to apply stable branch patches on top of the
release tarball.
2015-03-19 21:02:05 -04:00
Dimitri John Ledkov defa8e675b resolved: Do not add .busname dependencies, when compiling without kdbus. 2015-03-19 17:27:39 +01:00
Kay Sievers a31a0c92cd build-sys: fix name of new rules file 2015-03-12 17:44:58 +01:00
Kay Sievers 1c5f4cb190 rules: merge tty and serial rules file 2015-03-12 17:22:19 +01:00
Kay Sievers 654b036ba7 rules: merge udev-late.rules files 2015-03-12 16:34:18 +01:00
Kay Sievers 52346b5f54 rules: move block device rules to its own rules file 2015-03-12 16:09:46 +01:00
Kay Sievers 88a60da054 sysctl: move property handling to shared/ 2015-03-11 10:37:45 +01:00
Lennart Poettering 587fec427c importd: add API for exporting container/VM images
Also, expose it in machinectl.
2015-03-09 18:02:23 +01:00
Zbigniew Jędrzejewski-Szmek 9e4ded3064 build-sys: generate CLEANFILES from EXTRA_DIST
Everything that is generated can be assumed to belong to CLEANFILES,
which means that the original file has to be in EXTRA_DIST. Simplify
the rules by generating as in $subject.

We have less lists to adjust manually, and 'make clean' actually
removes more stuff that before.
2015-03-04 22:47:19 -05:00
Lennart Poettering b6e676ce41 importd: add new bus calls for importing local tar and raw images
This also adds "machinectl import-raw" and "machinectl import-tar" to
wrap these new bus calls.

THe commands basically do for local files that "machinectl pull-raw" and
friends do for remote files.
2015-03-05 00:59:38 +01:00
Lennart Poettering 3e2cda698f import: split out compression logic, so that we can share it with between import and pull calls 2015-03-05 00:59:37 +01:00
Lennart Poettering dc2c282b6a import: rename download code from "import" to "pull"
That way we can call the code for local container/VM imports "import"
without confusion.
2015-03-05 00:59:37 +01:00
Zbigniew Jędrzejewski-Szmek dcf1369057 Do not run sysv-generator-test when sysv compat is disabled 2015-03-03 10:59:51 -05:00
Zbigniew Jędrzejewski-Szmek 2a17c01044 build-sys: add fsckd.h to sources
Otherwise distribution tarfiles are not generated properly.
2015-03-03 10:59:51 -05:00
Zbigniew Jędrzejewski-Szmek ae5b2a86c2 build-sys: systemd.conf is generated, do not distribute 2015-03-03 10:59:51 -05:00
Lennart Poettering 432cea0087 importd: split out setup logic for /var/lib/machines into its own API file 2015-03-02 12:15:25 +01:00
Zbigniew Jędrzejewski-Szmek 6a33323836 build-sys: use -Wno-missing-field-initializers for efi stuff 2015-02-27 17:28:03 -05:00
Zbigniew Jędrzejewski-Szmek 83e7d8850c build-sys: make systemd-user-sessions conditional on PAM again
This undoes a part of previous commit: s-u-s is dependent on HAVE_PAM
again, but not on HAVE_LOGIND.
2015-02-27 17:28:03 -05:00
Ivan Shapovalov ea24d8d138 user-sessions: move into own subdir and build independently of logind
Suggested by Zbyszek on IRC.

[zj: /run/nologin is used with PAM. systemd-user-session is independent
     of logind.]
2015-02-27 17:28:03 -05:00
Kay Sievers 7361099e42 boot: efi - remove custom splash support 2015-02-26 19:51:08 +01:00
Kay Sievers 2f8d336478 boot: efi - split graphics and splash handling 2015-02-26 19:45:08 +01:00
Kay Sievers 37fa369066 boot: efi - support embedded splash image 2015-02-26 18:58:30 +01:00
Kay Sievers 33d25be0ef build-sys: efi - move cflag from x86_64 to common section 2015-02-26 01:56:09 +01:00
Lennart Poettering 113b3fc1a8 importd: create a loopback btrfs file system for /var/lib/machines, if necessary
When manipulating container and VM images we need efficient and atomic
directory snapshots and file copies, as well as disk quota. btrfs
provides this, legacy file systems do not. Hence, implicitly create a
loopback file system in /var/lib/machines.raw and mount it to
/var/lib/machines, if that directory is not on btrfs anyway.

This is done implicitly and transparently the first time the user
invokes "machinectl import-xyz".

This allows us to take benefit of btrfs features for container
management without actually having the rest of the system use btrfs.

The loopback is sized 500M initially. Patches to grow it dynamically are
to follow.
2015-02-24 17:27:53 +01:00