SHA256
1
0
forked from pool/systemd
Commit Graph

211 Commits

Author SHA256 Message Date
Robert Milasan
645a2ecffa Accepting request 178519 from home:rmilasan:branches:Base:System
- Add udev MSFT compability rules (bnc#805059).
  add: 1007-add-msft-compability-rules.patch
- Add sg3_utils requires, need it by 61-msft.rules (bnc#805059).
- Clean-up spec file, put udev patches after systemd patches.
- Rebase patches so they would apply nicely.

- Add udev MSFT compability rules (bnc#805059).
  add: 1007-add-msft-compability-rules.patch
- Add sg3_utils requires, need it by 61-msft.rules (bnc#805059).
- Clean-up spec file, put udev patches after systemd patches.
- Rebase patches so they would apply nicely.

OBS-URL: https://build.opensuse.org/request/show/178519
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=391
2013-06-11 11:22:32 +00:00
Robert Milasan
c51bf44e62 Accepting request 178446 from home:elvigia:branches:Base:System
- 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch
 fixes :
 * systemd-journald[347]: Failed to set ACL on 
 /var/log/journal/11d90b1c0239b5b2e38ed54f513722e3/user-1000.journal, 
 ignoring: Invalid argument
- 006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch
  systemctl disable should remove dangling symlinks.
- 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch
  alien childs are reported as alive when they are really dead.

- 0004-journald-DO-recalculate-the-ACL-mask-but-only-if-it-.patch
 fixes :
 * systemd-journald[347]: Failed to set ACL on 
 /var/log/journal/11d90b1c0239b5b2e38ed54f513722e3/user-1000.journal, 
 ignoring: Invalid argument
- 006-systemctl-core-allow-nuking-of-symlinks-to-removed-u.patch
  systemctl disable should remove dangling symlinks.
- 0008-service-don-t-report-alien-child-as-alive-when-it-s-.patch
  alien childs are reported as alive when they are really dead.

OBS-URL: https://build.opensuse.org/request/show/178446
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=390
2013-06-11 09:22:26 +00:00
36f972bcd4 Accepting request 176957 from home:fcrozat:branches:Base:System
- Update to release 204:
  + systemd-nspawn creates etc/resolv.conf in container if needed.
  + systemd-nspawn will store metadata about container in container
    cgroup including its root directory.
  + cgroup hierarchy has been reworked, all objects are now suffxed
    (with .session for user sessions, .user for users, .nspawn for
     containers). All cgroup names are now escaped to preven
     collision of object names.
  + systemctl list-dependencies gained --plain, --reverse, --after
    and --before switches.
  + systemd-inhibit shows processes name taking inhibitor lock.
  + nss-myhostname will now resolve "localhost" implicitly.
  + .include is not allowed recursively anymore and only in unit
    files. Drop-in files should be favored in most cases.
  + systemd-analyze gained "critical-chain" command, to get slowest
    chain of units run during boot-up.
  + systemd-nspawn@.service has been added to easily run nspawn
    container for system services. Just start
    "systemd-nspawn@foobar.service" and container from
    /var/lib/container/foobar" will be booted.
  + systemd-cgls has new --machine parameter to list processes from
    one container.
  + ConditionSecurity= can now check for apparmor and SMACK.
  + /etc/systemd/sleep.conf has been introduced to configure which
    kernel operation will be execute when "suspend", "hibernate" or
    "hybrid-sleep" is requrested. It allow new kernel "freeze"
    state to be used too. (This setting won't have any effect if
    pm-utils is installed).
  + ENV{SYSTEMD_WANTS} in udev rules will now implicitly escape
    passed argument if applicable.

OBS-URL: https://build.opensuse.org/request/show/176957
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=388
2013-05-29 15:26:40 +00:00
c7d0ecf1d6 Accepting request 176799 from home:elvigia:branches:Base:System
- Drop Add-bootsplash-handling-for-password-dialogs.patch bootsplash
support has been removed from the kernel.
- Drop ensure-systemd-udevd-is-started-before-local-fs-pre-for-lo.patch
fixed in systemd v199, commit 89d09e1b5c65a2d97840f682e0932c8bb499f166
- Apply rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch
only on ARM, patch rejected upstream because is too generic.
- no such define TARGET_SUSE exists but it is used in 
Revert-service-drop-support-for-SysV-scripts-for-the-early.patch
use HAVE_SYSV_COMPAT instead.

- Drop Add-bootsplash-handling-for-password-dialogs.patch bootsplash
support has been removed from the kernel.
- Drop ensure-systemd-udevd-is-started-before-local-fs-pre-for-lo.patch
fixed in systemd v199, commit 89d09e1b5c65a2d97840f682e0932c8bb499f166
- Apply rules-add-lid-switch-of-ARM-based-Chromebook-as-a-power-sw.patch
only on ARM, patch rejected upstream because is too generic.
- no such define TARGET_SUSE exists but it is used in 
Revert-service-drop-support-for-SysV-scripts-for-the-early.patch
use HAVE_SYSV_COMPAT instead.

OBS-URL: https://build.opensuse.org/request/show/176799
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=387
2013-05-28 08:51:44 +00:00
9e0ff63cd2 Accepting request 176648 from home:fcrozat:branches:Base:System
- Do no ship defaults for sysctl, they should be part of aaa_base
  (currently in procps).
- Add hostname-setup-shortname.patch: ensure shortname is set as
  hostname (bnc#820213).

OBS-URL: https://build.opensuse.org/request/show/176648
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=385
2013-05-27 09:58:29 +00:00
5612e431f8 Accepting request 176236 from home:fcrozat:branches:Base:System
- Rebase
  parse-etc-insserv.conf-and-adds-dependencies-accordingly.patch to
  fix memory corruption (thanks to Michal Vyskocil) (bnc#820454).

OBS-URL: https://build.opensuse.org/request/show/176236
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=383
2013-05-21 09:16:19 +00:00
Dr. Werner Fink
202db63534 Accepting request 175971 from home:fcrozat:branches:Base:System
- Add sysctl-handle-boot-sysctl.conf-kernel_release.patch: ensure
  /boot/sysctl.conf-<kernel_release> is handled (bnc#809420).

OBS-URL: https://build.opensuse.org/request/show/175971
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=382
2013-05-17 15:16:28 +00:00
Stephan Kulow
92e5406b7b Accepting request 175744 from home:fcrozat:branches:Base:System
- Update handle-SYSTEMCTL_OPTIONS-environment-variable.patch: don't
  free variable whose content is still be used (bnc#819970).

OBS-URL: https://build.opensuse.org/request/show/175744
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=380
2013-05-15 14:09:16 +00:00
Dr. Werner Fink
582bc954b5 Accepting request 175577 from home:fcrozat:branches:Base:System
- Add configure flags to ensure boot.local/halt.local are run on
  startup/shutdown.

OBS-URL: https://build.opensuse.org/request/show/175577
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=379
2013-05-15 06:50:16 +00:00
Robert Milasan
2341bcc86e Accepting request 175311 from home:rmilasan:branches:Base:System
- Fix firmware loading by enabling --with-firmware-path (bnc#817551).

- Fix firmware loading by enabling --with-firmware-path (bnc#817551).

OBS-URL: https://build.opensuse.org/request/show/175311
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=376
2013-05-13 18:23:10 +00:00
0bb23711f1 Accepting request 174108 from home:chkpnt:branches:Base:System
Otherwise, an empty folder will produce an error:

> for l in /etc/rc.d/rc4.d/*; do echo $l; done
/etc/rc.d/rc4.d/*

> systemd-sysv-convert --save iscsid
/usr/sbin/systemd-sysv-convert: line 44: [: too many arguments
/usr/sbin/systemd-sysv-convert: line 47: [: too many arguments

(resubmit of request 173801)

OBS-URL: https://build.opensuse.org/request/show/174108
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=374
2013-05-03 08:53:01 +00:00
Dr. Werner Fink
4bc38fd973 Accepting request 173532 from home:fcrozat:branches:Base:System
- Fix handle-etc-HOSTNAME.patch to properly set hostname at startup
  when using /etc/HOSTNAME.

OBS-URL: https://build.opensuse.org/request/show/173532
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=372
2013-04-26 16:25:08 +00:00
Robert Milasan
99692aaa9b Accepting request 173325 from home:rmilasan:branches:Base:System
- Rename remaning udev patches (clean-up).
- Generate %{_libexecdir}/modules-load.d/sg.conf so we load sg module at
  boot time not from udev (bnc#761109). 
- Drop unused patches:
  1001-Reinstate-TIMEOUT-handling.patch
  1005-udev-fix-sg-autoload-regression.patch
  1026-re-add-persistent-net.patch

- Rename remaning udev patches (clean-up).
- Generate %{_libexecdir}/modules-load.d/sg.conf so we load sg module at
  boot time not from udev (bnc#761109). 
- Drop unused patches:
  1001-Reinstate-TIMEOUT-handling.patch
  1005-udev-fix-sg-autoload-regression.patch
  1026-re-add-persistent-net.patch

OBS-URL: https://build.opensuse.org/request/show/173325
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=371
2013-04-25 08:33:19 +00:00
Dr. Werner Fink
ff82543c6f Accepting request 173023 from home:fcrozat:branches:Base:System
- Use drop-in file to fix bnc#804158.

OBS-URL: https://build.opensuse.org/request/show/173023
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=370
2013-04-25 07:23:12 +00:00
16bae67520 Accepting request 173021 from home:coolo:branches:openSUSE:Factory
- add some more conflicts to make bootstrap work

OBS-URL: https://build.opensuse.org/request/show/173021
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=369
2013-04-23 12:55:16 +00:00
85d08e28ed Accepting request 172848 from home:fcrozat:branches:Base:System
- Do not provide %{release} for systemd-analyze
- Add more conflicts to -mini packages
- Disable Predictable Network interface names until it has been
  reviewed by network team, with /usr/lib/tmpfiles.d/network.conf.
- Don't package /usr/lib/firmware/update (not used)

OBS-URL: https://build.opensuse.org/request/show/172848
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=367
2013-04-22 14:35:32 +00:00
41b8a2e3a0 Accepting request 172719 from home:elvigia:branches:Base:System
- Fix packaging error, there is no syslog.target anymore 
  do not pretend there is one.

- Fix packaging error, there is no syslog.target anymore 
  do not pretend there is one.

OBS-URL: https://build.opensuse.org/request/show/172719
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=366
2013-04-22 09:09:27 +00:00
Dr. Werner Fink
58624a23ff Accepting request 172582 from home:fcrozat:branches:Base:System
- Update to release 202:
  + 'systemctl list-jobs' got some polishing. '--type=' argument
    may now be passed more than once. 'systemctl list-sockets' has
    been added.
  + systemd gained a new unit 'systemd-static-nodes.service'
    that generates static device nodes earlier during boot, and
    can run in conjunction with udev.
  + systemd-nspawn now places all containers in the new /machine
    top-level cgroup directory in the name=systemd hierarchy.
  + bootchart can now store its data in the journal.
  + journactl can now take multiple --unit= and --user-unit=
    switches.
  + The cryptsetup logic now understands the "luks.key=" kernel
    command line switch. If a configured key file is missing, it
    will fallback to prompting the user.
- Rebase some patches
- Update handle-SYSTEMCTL_OPTIONS-environment-variable.patch to
  properly handle SYSTEMCTL_OPTIONS

- Fix regression in the default for tmp auto-deletion
  (systemd-tmp-safe-defaults.patch, FATE#314974).

- Add chromebook lid switch as a power switch to logind rule to
  enable suspend on lid close

- Update to release 202:
  + 'systemctl list-jobs' got some polishing. '--type=' argument
    may now be passed more than once. 'systemctl list-sockets' has
    been added.
  + systemd gained a new unit 'systemd-static-nodes.service'

OBS-URL: https://build.opensuse.org/request/show/172582
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=365
2013-04-19 20:31:17 +00:00
bde36948ad Accepting request 172500 from home:rmax:branches:Base:System
- Fix regression in the default for tmp auto-deletion
  (systemd-tmp-safe-defaults.patch, FATE#314974).

OBS-URL: https://build.opensuse.org/request/show/172500
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=364
2013-04-19 14:00:28 +00:00
Dr. Werner Fink
53e4623893 Accepting request 163799 from home:fcrozat:branches:Base:System
update to v201

OBS-URL: https://build.opensuse.org/request/show/163799
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=363
2013-04-13 11:09:53 +00:00
34ff0111a1 Accepting request 163780 from home:rjschwei:branches:Base:System
- Add chromebook lid switch as a power switch to logind rule to
  enable suspend on lid close

OBS-URL: https://build.opensuse.org/request/show/163780
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=362
2013-04-12 16:24:46 +00:00
51896e9167 Accepting request 163593 from home:fcrozat:branches:Base:System
- Add improve-readahead-spinning.patch: improve readahead
  performance on spinning media with ext4.
- Add fix-journal-vacuum-logic.patch: fix vacuum logic in journal
  (bnc#789589).
- Add fix-lsb-provides.patch: ensure LSB provides are correctly
  handled if also referenced as dependencies (bnc#809646).
- Add fix-loopback-mount.patch: ensure udevd is started (and
  therefore static devices are created) before mounting
  (bnc#809820).
- Update systemd-sysv-convert to search services files in new
  location (bnc#809695).
- Add logind-nvidia-acl.diff: set ACL on nvidia devices
  (bnc#808319).
- Add do-no-isolate-on-fsck-failure.patch: do not turn off services
  if fsck fails (bnc#812874)
- Add wait-for-processes-killed.patch: wait for processes killed by
  SIGTERM before killing them with SIGKILL.
- Update systemctl-options.patch to only apply SYSTEMCTL_OPTIONS to
  systemctl command (bnc#801878).

OBS-URL: https://build.opensuse.org/request/show/163593
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=361
2013-04-11 10:11:09 +00:00
Robert Milasan
1494fb1124 Accepting request 162277 from home:sbrabec:branches:Base:System
- Fixed disabling CapsLock and enabling NumLock (bnc#746595,
  0001-handle-disable_caplock-and-compose_table-and-kbd_rat.patch,
  systemd-numlock-suse.patch).
- Explicitly require libgcrypt-devel to fix build failure.

OBS-URL: https://build.opensuse.org/request/show/162277
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=360
2013-04-03 07:18:50 +00:00
Robert Milasan
ba1450f318 Accepting request 162067 from home:rmilasan:branches:Base:System
- udev: ensure that the network interfaces are renamed even if they
  exist (bnc#809843).
  add: 1027-udev-always-rename-network.patch 

- udev: re-add persistent network rules (bnc#809843).
  add: 1026-re-add-persistent-net.patch
- rebase all patches, ensure that they apply properly. 

- udev: ensure that the network interfaces are renamed even if they
  exist (bnc#809843).
  add: 1027-udev-always-rename-network.patch

OBS-URL: https://build.opensuse.org/request/show/162067
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=359
2013-04-02 08:35:42 +00:00
Robert Milasan
3283fdeb6b - udev: re-add persistent network rules (bnc#809843).
add: 1026-re-add-persistent-net.patch
- rebase all patches, ensure that they apply properly.

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=357
2013-03-20 10:29:34 +00:00
Robert Milasan
8dc527bcb4 Accepting request 156080 from home:fcrozat:branches:Base:System
- Add rbind-mount.patch: handle rbind mount points correctly
  (bnc#804575).

OBS-URL: https://build.opensuse.org/request/show/156080
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=355
2013-02-22 12:17:51 +00:00
Robert Milasan
41cadc8744 Accepting request 155834 from home:fcrozat:branches:Base:System
- Ensure journal is flushed on disk when systemd-logger is
  installed for the first time.
- Add improve-journal-perf.patch: improve journal performance on
  query.
- Add support-hybrid-suspend.patch: add support for hybrid suspend.
- Add forward-to-pmutils.patch: forward suspend/hibernation calls
  to pm-utils, if installed (bnc#790157).

OBS-URL: https://build.opensuse.org/request/show/155834
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=353
2013-02-20 08:34:16 +00:00
Robert Milasan
00fe0b8efb Accepting request 155790 from home:rmilasan:branches:Base:System
- udev: usb_id: parse only 'size' bytes of the 'descriptors' buffer
  add: 1024-udev-usb_id-parse-only-size-bytes-of-the-descriptors.patch
- udev: expose new ISO9660 properties from libblkid
  add: 1025-udev-expose-new-ISO9660-properties-from-libblkid.patch 

- udev: usb_id: parse only 'size' bytes of the 'descriptors' buffer
  add: 1024-udev-usb_id-parse-only-size-bytes-of-the-descriptors.patch
- udev: expose new ISO9660 properties from libblkid
  add: 1025-udev-expose-new-ISO9660-properties-from-libblkid.patch

OBS-URL: https://build.opensuse.org/request/show/155790
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=351
2013-02-19 10:05:35 +00:00
2a5651c0c0 Accepting request 155742 from home:jengelh:branches:Base:System
- Create getty@tty1.service to restore traditional SUSE behavior
  of not clearing tty1. (bnc#804158)

OBS-URL: https://build.opensuse.org/request/show/155742
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=350
2013-02-18 16:15:49 +00:00
Robert Milasan
9df2d98225 Accepting request 155556 from home:fcrozat:branches:Base:System
- Add early-sync-shutdown.patch: start sync just when
  shutdown.target is beginning
- Update parse-multiline-env-file.patch to better handle continuing
  lines.
- Add handle-HOSTNAME.patch: handle /etc/HOSTNAME (bnc#803653).
- Add systemctl-print-wall-on-if-successful.patch: only print on
  wall if successful.
- Add improve-bash-completion.patch: improve bash completion.

OBS-URL: https://build.opensuse.org/request/show/155556
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=348
2013-02-16 09:43:26 +00:00
5b2ebd0bfd Accepting request 155543 from home:lnussel:branches:Base:System
- disable nss-myhostname warning (bnc#783841)
  => disable-nss-myhostname-warning-bnc-783841.diff

- disable nss-myhostname warning (bnc#783841)
  => disable-nss-myhostname-warning-bnc-783841.diff

OBS-URL: https://build.opensuse.org/request/show/155543
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=346
2013-02-15 14:53:23 +00:00
Robert Milasan
6a1d711f33 Accepting request 155319 from home:rmilasan:branches:Base:System
- rework patch:
  1020-usb_id-some-strange-devices-have-a-very-bogus-or-strage-serial.patch
- udev: use unique names for temporary files created in /dev.
  add: 1022-udev-use-unique-names-for-temporary-files-created-in.patch
- cdrom_id: add data track count for bad virtual drive.
  add: 1023-cdrom_id-add-data-track-count-for-bad-virtual-drive.patch 

- rework patch:
  1020-usb_id-some-strange-devices-have-a-very-bogus-or-strage-serial.patch
- udev: use unique names for temporary files created in /dev.
  add: 1022-udev-use-unique-names-for-temporary-files-created-in.patch
- cdrom_id: add data track count for bad virtual drive.
  add: 1023-cdrom_id-add-data-track-count-for-bad-virtual-drive.patch

OBS-URL: https://build.opensuse.org/request/show/155319
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=344
2013-02-13 12:01:15 +00:00
Robert Milasan
82cc6e17fb Accepting request 155189 from home:rmilasan:branches:Base:System
- usb_id: ensure we have a valid serial number as a string (bnc#779493).
  add: 1020-usb_id-some-strange-devices-have-a-very-bogus-or-strage-serial.patch
- cdrom_id: created links for the default cd/dvd drive (bnc#783054).
  add: 1021-create-default-links-for-primary-cd_dvd-drive.patch

- Add cryptsetup-accept-read-only.patch: accept "read-only" in
  addition to "readonly" in crypttab
- Update parse-multiline-env-file.patch to correctly handle
  commented lines (bnc#793411)

- usb_id: ensure we have a valid serial number as a string (bnc#779493).
  add: 1020-usb_id-some-strange-devices-have-a-very-bogus-or-strage-serial.patch
- cdrom_id: created links for the default cd/dvd drive (bnc#783054).
  add: 1021-create-default-links-for-primary-cd_dvd-drive.patch

OBS-URL: https://build.opensuse.org/request/show/155189
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=342
2013-02-12 09:21:01 +00:00
Robert Milasan
4ded6e1300 Accepting request 150752 from home:fcrozat:branches:Base:System
- Add cryptsetup-accept-read-only.patch: accept "read-only" in
  addition to "readonly" in crypttab
- Update parse-multiline-env-file.patch to correctly handle
  commented lines (bnc#793411)

OBS-URL: https://build.opensuse.org/request/show/150752
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=340
2013-02-01 18:07:17 +00:00
Robert Milasan
e44ca8a27c - fix in udev package missing link in basic.target.wants for
systemd-udev-root-symlink.service
- fix in udev package missing link in basic.target.wants for 
  systemd-udev-root-symlink.service

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=338
2013-01-29 14:18:53 +00:00
Robert Milasan
bfc2e0dc4e - journalctl: require argument for --priority
add: journalctl-require-argument-for-priority
- dropped useless patches:
  libudev-validate-argument-udev_enumerate_new.patch
  kmod-fix-builtin-typo.patch

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=336
2013-01-29 13:47:43 +00:00
Robert Milasan
3064953b90 - udev: Fix device matching in the accelerometer
add: 1019-udev-Fix-device-matching-in-the-accelerometer.patch 
- keymap: add aditional support for some keyboard keys
  add: 1018-keymap-add-aditional-support.patch
- rename udev-root-symlink.service to systemd-udev-root-symlink.service.

- udev: Fix device matching in the accelerometer
  add: 1019-udev-Fix-device-matching-in-the-accelerometer.patch 
- keymap: add aditional support for some keyboard keys
  add: 1018-keymap-add-aditional-support.patch
- rename udev-root-symlink.service to systemd-udev-root-symlink.service.

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=335
2013-01-29 13:40:40 +00:00
Robert Milasan
7a7011940a Accepting request 150151 from home:fcrozat:branches:Base:System
- Add tmpfiles-X-type.patch: allow to clean directories with
  removing them.
- Add systemd-fix-merge-ignore-dependencies.patch: fix merging with
  --ignore-dependencies waiting for dependencies (bnc#800365).
- Update systemd-numlock-suse.patch: udev-trigger.service is now
  called systemd-udev-trigger.service.
- Add improve-man-environment.patch: improve manpage regarding
  Environment value.

OBS-URL: https://build.opensuse.org/request/show/150151
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=333
2013-01-28 13:36:03 +00:00
Robert Milasan
429339fe2c Accepting request 149703 from home:fcrozat:branches:Base:System
- Add systemctl-options.patch: handle SYSTEMCTL_OPTIONS internaly
  (bnc#798620).
- Update crypt-loop-file.patch to correctly detect crypto loop
  files (bnc#799514).
- Add journalctl-remove-leftover-message.patch: remove debug
  message in systemctl.
- Add job-avoid-recursion-when-cancelling.patch: prevent potential
  recursion when cancelling a service.
- Add sysctl-parse-all-keys.patch: ensure sysctl file is fully
  parsed.
- Add journal-fix-cutoff-max-date.patch: fix computation of cutoff
  max date for journal.
- Add reword-rescue-mode-hints.patch: reword rescue prompt.
- Add improve-overflow-checks.patch: improve time overflow checks.
- Add fix-swap-behaviour-with-symlinks.patch: fix swap behaviour
  with symlinks.
- Add hostnamectl-fix-set-hostname-with-no-argument.patch: ensure
  hostnamectl requires an argument when called with set-hostname
  option.
- Add agetty-overrides-term.patch: pass correctly terminal type to
  agetty.
- Add check-for-empty-strings-in-strto-conversions.patch: better
  check for empty strings in strto* conversions.
- Add strv-cleanup-error-path-loops.patch: cleanup strv on error
  path.
- Add cryptsetup-handle-plain.patch: correctly handle "plain"
  option in cryptsetup.
- Add fstab-generator-improve-error-message.patch: improve error
  message in fstab-generator.
- Add delta-accept-t-option.patch: accept -t option in

OBS-URL: https://build.opensuse.org/request/show/149703
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=331
2013-01-23 13:44:07 +00:00
Andreas Jaeger
3c887e3f4e Accepting request 147937 from home:fcrozat:branches:Base:System
- Add multiple-sulogin.patch: allows multiple sulogin instance
  (bnc#793182).

(please forward to Factory)

OBS-URL: https://build.opensuse.org/request/show/147937
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=329
2013-01-10 19:35:11 +00:00
Robert Milasan
0e78f272ba - udev: path_id - handle Hyper-V devices
add: 1008-udev-path_id-handle-Hyper-V-devices.patch
- keymap: Update the list of Samsung Series 9 models
  add: 1009-keymap-Update-the-list-of-Samsung-Series-9-models.patch
- keymap: Add Samsung 700T
  add: 1010-keymap-Add-Samsung-700T.patch
- libudev: avoid leak during realloc failure
  add: 1011-libudev-avoid-leak-during-realloc-failure.patch
- libudev: do not resolve $attr{device} symlinks
  add: 1012-libudev-do-not-resolve-attr-device-symlinks.patch
- libudev: validate 'udev' argument to udev_enumerate_new()
  add: 1013-libudev-validate-udev-argument-to-udev_enumerate_new.patch
- udev: fix whitespace
  add: 1014-udev-fix-whitespace.patch
- udev: properly handle symlink removal by 'change' event
  add: 1015-udev-properly-handle-symlink-removal-by-change-event.patch
- udev: builtin - do not fail builtin initialization if one of 
  them returns an error
  add: 1016-udev-builtin-do-not-fail-builtin-initialization-if-o.patch
- udev: use usec_t and now()
  add: 1017-udev-use-usec_t-and-now.patch 
  closing an non-existent dbus connection and getting assertion 
  failures. 

- udev: path_id - handle Hyper-V devices
  add: 1008-udev-path_id-handle-Hyper-V-devices.patch
- keymap: Update the list of Samsung Series 9 models
  add: 1009-keymap-Update-the-list-of-Samsung-Series-9-models.patch
- keymap: Add Samsung 700T
  add: 1010-keymap-Add-Samsung-700T.patch

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=327
2013-01-09 09:46:41 +00:00
Robert Milasan
deb573f767 - make 'reload' and 'force-reload' LSB compliant (bnc#793936).
- make 'reload' and 'force-reload' LSB compliant (bnc#793936).

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=325
2013-01-08 13:29:03 +00:00
Robert Milasan
54e3a89734 - udevd: add missing ':' to getopt_long 'e'.
add: 1007-udevd-add-missing-to-getopt_long-e.patch
- clean up systemd.spec, make it easy to see which are udev and
  systemd patches.

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=324
2013-01-08 12:54:22 +00:00
Robert Milasan
79b1f32c8f Accepting request 145035 from home:elvigia:branches:Base:System
OBS-URL: https://build.opensuse.org/request/show/145035
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=322
2012-12-13 09:24:00 +00:00
Stephan Kulow
279d242f4c - add conflicts between udev-mini and udev-mini-devel to libudev1
- add conflicts between udev-mini and udev-mini-devel to libudev1

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=320
2012-12-10 14:22:55 +00:00
1b82a2aec2 Accepting request 144458 from home:elvigia:branches:Base:System
OBS-URL: https://build.opensuse.org/request/show/144458
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=318
2012-12-07 08:12:17 +00:00
Robert Milasan
4f7edebdc7 Accepting request 144331 from home:fcrozat:branches:Base:System
- Add fix-devname-prefix.patch: fix modules.devname path, it isn't
  in /usr.
- Move post script to fix symlinks in /etc/systemd/system to a
  trigger to run it after old systemd is uninstalled.

- Add fix-debugshell.patch: use /bin/bash if sushell isn't
  installed (bnc#789052).
- Add handle-root-uses-lang.patch: handle ROOT_USES_LANG=ctype
  (bnc#792182).
- Ensure libudev1 and libudev-mini1 conflicts.

OBS-URL: https://build.opensuse.org/request/show/144331
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=317
2012-12-05 18:07:07 +00:00
53f921a0f1 Accepting request 142434 from home:rmilasan:branches:Base:System
- Fix creation of /dev/root link.

OBS-URL: https://build.opensuse.org/request/show/142434
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=314
2012-11-22 14:32:12 +00:00
Cristian Rodríguez
ab9293f69f Accepting request 142164 from home:fcrozat:branches:Base:System
- Add remount-ro-before-unmount.patch: always remount read-only
  before unmounting in final shutdown loop.
- Add switch-root-try-pivot-root.patch: try pivot_root before
  overmounting /

OBS-URL: https://build.opensuse.org/request/show/142164
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=313
2012-11-20 17:57:51 +00:00
1df8eede9a Accepting request 142041 from home:fcrozat:branches:Base:System
- links more manpages for migrated tools (from Christopher
  Yeleighton).
- disable boot.localnet service, ypbind service will do the right
  thing now (bnc#716746)
- add xdm-display-manager.patch: pull xdm.service instead of
  display-manager.service (needed until xdm initscript is migrated
  to native systemd service).
- Add fix-permissions-btmp.patch: ensure btmp is owned only by root
  (bnc#777405).
- Have the udev package create a tape group, as referenced by
  50-udev-default.rules and 60-persistent-storage-tape.rules
  (DimStar).
- Add fix-bad-memory-access.patch: fix crash in journal rotation.
- Add fix-dbus-crash.patch: fix D-Bus caused crash.
- Add sync-on-shutdown.patch: ensure sync is done when initiating
  shutdown.
- Add mount-efivars.patch: mount efivars if booting on UEFI.

- Ship a empty systemd-journald initscript in systemd-logger to
  stop insserv to complain about missing syslog dependency.
- Update
  0001-service-Fix-dependencies-added-when-parsing-insserv..patch
  with bug fixes from Debian.


old: Base:System/systemd
new: home:fcrozat:branches:Base:System/systemd rev NoneIndex: 0001-service-Fix-dependencies-added-when-parsing-insserv..patch
===================================================================
--- 0001-service-Fix-dependencies-added-when-parsing-insserv..patch (revision 311)
+++ 0001-service-Fix-dependencies-added-when-parsing-insserv..patch (revision 5)
@@ -1,17 +1,35 @@
-From 6620bceb7233a830be3635a4f7a7dc75c13a9c8e Mon Sep 17 00:00:00 2001
-From: Frederic Crozat <fcrozat@suse.com>
-Date: Fri, 30 Sep 2011 14:12:45 +0200
-Subject: [PATCH] service: Fix dependencies added when parsing insserv.conf
-
----
- src/service.c |   16 +++++++++-------
- 1 files changed, 9 insertions(+), 7 deletions(-)
-
-Index: systemd-41/src/service.c
+Index: systemd-195/src/core/service.c
 ===================================================================
---- systemd-41.orig/src/core/service.c
-+++ systemd-41/src/core/service.c
-@@ -3210,23 +3210,30 @@ static void sysv_facility_in_insserv_con
+--- systemd-195.orig/src/core/service.c
++++ systemd-195/src/core/service.c
+@@ -3391,12 +3391,13 @@ static void service_notify_message(Unit
+ 
+ #ifdef HAVE_SYSV_COMPAT
+ 
+-#ifdef TARGET_SUSE
+-static void sysv_facility_in_insserv_conf(Manager *mgr) {
+-        FILE *f=NULL;
++#if defined(TARGET_SUSE) || defined(TARGET_DEBIAN)
++static void sysv_parse_insserv_conf(Manager *mgr, const char* filename) {
++        FILE *f = NULL;
+         int r;
+ 
+-        if (!(f = fopen("/etc/insserv.conf", "re"))) {
++        if (!(f = fopen(filename, "re"))) {
++                log_error("Failed to open file %s", filename);
+                 r = errno == ENOENT ? 0 : -errno;
+                 goto finish;
+         }
+@@ -3410,7 +3411,7 @@ static void sysv_facility_in_insserv_con
+                                 break;
+ 
+                         r = -errno;
+-                        log_error("Failed to read configuration file '/etc/insserv.conf': %s", strerror(-r));
++                        log_error("Failed to read configuration file '%s': %s", filename, strerror(-r));
+                         goto finish;
+                 }
+ 
+@@ -3425,23 +3426,30 @@ static void sysv_facility_in_insserv_con
                          Unit *u;
                          if (sysv_translate_facility(parsed[0], NULL, &facility) < 0)
                                  continue;
@@ -29,12 +47,12 @@
                                  STRV_FOREACH (j, parsed+1) {
 -                                        if (*j[0]=='+') {
 -                                                e = UNIT_WANTS;
-+                                        if (*j[0]=='+')
++                                        if (*j[0] == '+')
                                                  name = *j+1;
 -                                        }
 -                                        else {
 -                                                e = UNIT_REQUIRES;
-+                                        else
++                                        else 
                                                  name = *j;
 -                                        }
 +                                        if (streq(name, "boot.localfs") ||
@@ -44,9 +62,54 @@
                                                  continue;
  
 -                                        r = unit_add_two_dependencies_by_name(u, UNIT_BEFORE, e, dep, NULL, true);
-+                                        r = unit_add_dependency_by_name_inverse(u, UNIT_BEFORE, dep, NULL, true);
-+                                        if (*j[0]!='+')
++                                        r = unit_add_two_dependencies_by_name_inverse(u, UNIT_WANTS, UNIT_BEFORE, dep, NULL, true);
++                                        if (*j[0] != '+')
 +                                                r = unit_add_dependency_by_name(u, UNIT_REQUIRES, dep, NULL, true);
                                          free(dep);
                                  }
                          }
+@@ -3454,6 +3462,35 @@ finish:
+                 fclose(f);
+ 
+ }
++
++static void sysv_facility_in_insserv_conf(Manager *mgr) {
++        DIR *d =NULL;
++        struct dirent *de;
++
++#ifdef TARGET_DEBIAN
++        if (!(d = opendir("/etc/insserv.conf.d/")))
++                if (errno != ENOENT) {
++                       log_warning("opendir() failed on /etc/insserv.conf.d/ %s", strerror(errno));
++                       goto finish;
++                }
++
++        while ((de = readdir(d))) {
++                char *path = NULL;
++                if (ignore_file(de->d_name))
++                        continue;
++
++                path = join("/etc/insserv.conf.d/", de->d_name, NULL);
++                sysv_parse_insserv_conf(mgr, path);
++                free(path);
++        }
++finish:
++        if (d)
++                closedir(d);
++#endif
++
++        sysv_parse_insserv_conf(mgr, "/etc/insserv.conf");
++}
++
+ #endif
+ 
+ static int service_enumerate(Manager *m) {
+@@ -3604,7 +3641,7 @@ static int service_enumerate(Manager *m)
+ 
+         r = 0;
+ 
+-#ifdef TARGET_SUSE
++#if defined(TARGET_SUSE) || defined(TARGET_DEBIAN)
+         sysv_facility_in_insserv_conf (m);
+ #endif
+ 
Index: systemd-mini.changes
===================================================================
--- systemd-mini.changes (revision 311)
+++ systemd-mini.changes (revision 5)
@@ -1,4 +1,35 @@
 -------------------------------------------------------------------
+Tue Nov 20 09:36:43 UTC 2012 - fcrozat@suse.com
+
+- links more manpages for migrated tools (from Christopher
+  Yeleighton).
+- disable boot.localnet service, ypbind service will do the right
+  thing now (bnc#716746)
+- add xdm-display-manager.patch: pull xdm.service instead of
+  display-manager.service (needed until xdm initscript is migrated
+  to native systemd service).
+- Add fix-permissions-btmp.patch: ensure btmp is owned only by root
+  (bnc#777405).
+- Have the udev package create a tape group, as referenced by
+  50-udev-default.rules and 60-persistent-storage-tape.rules
+  (DimStar).
+- Add fix-bad-memory-access.patch: fix crash in journal rotation.
+- Add fix-dbus-crash.patch: fix D-Bus caused crash.
+- Add sync-on-shutdown.patch: ensure sync is done when initiating
+  shutdown.
+- Add mount-efivars.patch: mount efivars if booting on UEFI.
+
+
+-------------------------------------------------------------------
+Thu Nov 15 14:31:28 UTC 2012 - fcrozat@suse.com
+
+- Ship a empty systemd-journald initscript in systemd-logger to
+  stop insserv to complain about missing syslog dependency.
+- Update
+  0001-service-Fix-dependencies-added-when-parsing-insserv..patch
+  with bug fixes from Debian.
+
+-------------------------------------------------------------------
 Wed Nov 14 17:36:05 UTC 2012 - fcrozat@suse.com
 
 - /var/log/journal is now only provided by systemd-logger (journal
Index: systemd-mini.spec
===================================================================
--- systemd-mini.spec (revision 311)
+++ systemd-mini.spec (revision 5)
@@ -102,6 +102,7 @@
 Source5:        systemd-insserv_conf
 Source6:        baselibs.conf
 Source7:        libgcrypt.m4
+Source8:        systemd-journald.init
 
 Source1060:     boot.udev
 Source1061:     write_dev_root_rule
@@ -128,6 +129,8 @@
 Patch56:        support-suse-clock-sysconfig.patch
 Patch59:        fix-enable-disable-boot-initscript.patch
 Patch60:        var-run-lock.patch
+Patch63:        xdm-display-manager.patch
+Patch64:        fix-permissions-btmp.patch
 
 # Upstream First - Policy:
 # Never add any patches to this package without the upstream commit id
@@ -137,6 +140,14 @@
 Patch61:        fix-logind-pty-seat.patch
 # PATCH-FIX-UPSTREAM fix-build-glibc217.patch fcrozat@suse.com -- fix build with latest glibc
 Patch62:        fix-build-glibc217.patch
+# PATCH-FIX-UPSTREAM fix-bad-memory-access.patch fcrozat@suse.com -- fix bad memory access
+Patch65:        fix-bad-memory-access.patch
+# PATCH-FIX-UPSTREAM fix-dbus-crash.patch fcrozat@suse.com -- fix D-Bus caused crash
+Patch66:        fix-dbus-crash.patch
+# PATCH-FIX-UPSTREAM sync-on-shutdown.patch fcrozat@suse.com -- Sync on shutdown
+Patch67:        sync-on-shutdown.patch
+# PATCH-FIX-UPSTREAM mount-efivars.patch fcrozat@suse.com -- mount efivars if booting under UEFI
+Patch68:        mount-efivars.patch
 
 # udev patches
 # PATCH-FIX-OPENSUSE 0001-Reinstate-TIMEOUT-handling.patch
@@ -151,8 +162,6 @@
 # PATCH-FIX-OPENSUSE 0027-udev-fix-sg-autoload-regression.patch
 Patch1027:      0027-udev-fix-sg-autoload-regression.patch
 
-# systemd patches
-
 %description
 Systemd is a system and service manager, compatible with SysV and LSB
 init scripts for Linux. systemd provides aggressive parallelization
@@ -313,6 +322,7 @@
 %patch1026 -p1
 %patch1027 -p1
 
+#systemd
 %patch1 -p1
 %patch6 -p1
 # don't apply when bootstrapping to not modify configure.in
@@ -337,6 +347,12 @@
 %patch60 -p1
 %patch61 -p1
 %patch62 -p1
+%patch63 -p1
+%patch64 -p1
+%patch65 -p1
+%patch66 -p1
+%patch67 -p1
+%patch68 -p1
 
 %build
 autoreconf -fiv
@@ -368,8 +384,14 @@
 ln -sf %{_bindir}/systemd-ask-password $RPM_BUILD_ROOT/bin/systemd-ask-password
 ln -sf %{_bindir}/systemctl $RPM_BUILD_ROOT/bin/systemctl
 ln -sf %{_prefix}/lib/systemd/systemd-udevd $RPM_BUILD_ROOT/sbin/udevd
+%if ! 0%{?bootstrap}
+ln -sf systemd-udevd.8 $RPM_BUILD_ROOT/%{_mandir}/man8/udevd.8
+%endif
 mkdir -p $RPM_BUILD_ROOT/%{_prefix}/usr/lib/firmware/updates
 ln -sf /lib/firmware $RPM_BUILD_ROOT/usr/lib/firmware
+%if ! 0%{?bootstrap}
+install -m755 -D %{S:8} $RPM_BUILD_ROOT/etc/init.d/systemd-journald
+%endif
 
 install -m755 -D %{S:1060} $RPM_BUILD_ROOT/etc/init.d/boot.udev
 ln -s systemd-udevd.service $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/udev.service
@@ -378,11 +400,6 @@
 mkdir -p $RPM_BUILD_ROOT/lib/systemd/system/basic.target.wants
 ln -sf ../udev-root-symlink.service $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/basic.target.wants
 
-#fix manpages
-%if ! 0%{?bootstrap}
-sed -i -e 's,^\(\.so \)\(.*\.\)\([0-9]\),\1man\3/\2\3,g' %{buildroot}/%{_mandir}/*/*
-%endif
-
 #workaround for 716939
 chmod 644 %{buildroot}%{_bindir}/systemd-analyze
 mkdir -p %{buildroot}%{_sysconfdir}/rpm
@@ -392,7 +409,7 @@
 
 install -m755 %{S:3} -D %{buildroot}%{_sbindir}/systemd-sysv-convert
 # do not install, code has been fixed, might be useful in the future
-#install -m755 %{S:5} %{buildroot}/lib/systemd/system-generators
+#install -m755 %{S:5} %{buildroot}/usr/lib/systemd/system-generators
 ln -s ../usr/lib/systemd/systemd %{buildroot}/bin/systemd
 ln -s ../usr/lib/systemd/systemd %{buildroot}/sbin/init
 ln -s ../usr/bin/systemctl %{buildroot}/sbin/reboot
@@ -415,8 +432,7 @@
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/ldconfig.service
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/loadmodules.service
 install -m644 %{S:2} %{buildroot}/%{_prefix}/lib/systemd/system/localfs.service
-# need to be implemented in systemd directly
-#ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/localnet.service
+ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/localnet.service
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/proc.service
 ln -s systemd-fsck-root.service %{buildroot}/%{_prefix}/lib/systemd/system/rootfsck.service
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/single.service
@@ -442,8 +458,12 @@
 %endif
 
 # legacy links
-ln -s loginctl %{buildroot}%{_bindir}/systemd-loginctl
-ln -s journalctl %{buildroot}%{_bindir}/systemd-journalctl
+for f in loginctl journalctl ; do 
+  ln -s $f %{buildroot}%{_bindir}/systemd-$f
+%if ! 0%{?bootstrap}
+  ln -s $f.1 %{buildroot}%{_mandir}/man1/systemd-$f.1
+%endif
+done
 ln -s /usr/lib/udev %{buildroot}/lib/udev
 
 # Create the /var/log/journal directory to change the volatile journal to a persistent one
@@ -532,6 +552,8 @@
 elif [ ! -e /lib/udev ]; then
   ln -s /usr/lib/udev /lib/udev
 fi
+# Create "tape" group which is referenced by 50-udev-default.rules and 60-persistent-storage-tape.rules
+/usr/sbin/groupadd -r tape 2> /dev/null || :
 # kill daemon if we are not in a chroot
 if test -f /proc/1/exe -a -d /proc/1/root ; then
         if test "$(stat -Lc '%%D-%%i' /)" = "$(stat -Lc '%%D-%%i' /proc/1/root)"; then
@@ -724,6 +746,10 @@
 %exclude %{_mandir}/man8/telinit.8*
 %exclude %{_mandir}/man8/runlevel.8*
 %exclude %{_mandir}/man*/*udev*.[0-9]*
+
+# Packaged in analyze subpackage
+%exclude %{_mandir}/man1/systemd-analyze.1*
+
 %{_mandir}/man1/*.1*
 %{_mandir}/man3/*.3*
 %{_mandir}/man5/*.5*
@@ -787,7 +813,11 @@
 %endif
 
 %files analyze
+%defattr(-,root,root)
 %attr(0755,root,root) /usr/bin/systemd-analyze
+%if ! 0%{?bootstrap}
+%{_mandir}/man1/systemd-analyze.1*
+%endif
 
 %files -n %{udevpkgname}
 %defattr(-,root,root)
@@ -878,6 +908,7 @@
 %defattr(-,root,root)
 %dir /var/log/journal
 /var/log/README
+/etc/init.d/systemd-journald
 
 %endif
 
Index: systemd.changes
===================================================================
--- systemd.changes (revision 311)
+++ systemd.changes (revision 5)
@@ -1,4 +1,35 @@
 -------------------------------------------------------------------
+Tue Nov 20 09:36:43 UTC 2012 - fcrozat@suse.com
+
+- links more manpages for migrated tools (from Christopher
+  Yeleighton).
+- disable boot.localnet service, ypbind service will do the right
+  thing now (bnc#716746)
+- add xdm-display-manager.patch: pull xdm.service instead of
+  display-manager.service (needed until xdm initscript is migrated
+  to native systemd service).
+- Add fix-permissions-btmp.patch: ensure btmp is owned only by root
+  (bnc#777405).
+- Have the udev package create a tape group, as referenced by
+  50-udev-default.rules and 60-persistent-storage-tape.rules
+  (DimStar).
+- Add fix-bad-memory-access.patch: fix crash in journal rotation.
+- Add fix-dbus-crash.patch: fix D-Bus caused crash.
+- Add sync-on-shutdown.patch: ensure sync is done when initiating
+  shutdown.
+- Add mount-efivars.patch: mount efivars if booting on UEFI.
+
+
+-------------------------------------------------------------------
+Thu Nov 15 14:31:28 UTC 2012 - fcrozat@suse.com
+
+- Ship a empty systemd-journald initscript in systemd-logger to
+  stop insserv to complain about missing syslog dependency.
+- Update
+  0001-service-Fix-dependencies-added-when-parsing-insserv..patch
+  with bug fixes from Debian.
+
+-------------------------------------------------------------------
 Wed Nov 14 17:36:05 UTC 2012 - fcrozat@suse.com
 
 - /var/log/journal is now only provided by systemd-logger (journal
Index: systemd.spec
===================================================================
--- systemd.spec (revision 311)
+++ systemd.spec (revision 5)
@@ -97,6 +97,7 @@
 Source5:        systemd-insserv_conf
 Source6:        baselibs.conf
 Source7:        libgcrypt.m4
+Source8:        systemd-journald.init
 
 Source1060:     boot.udev
 Source1061:     write_dev_root_rule
@@ -123,6 +124,8 @@
 Patch56:        support-suse-clock-sysconfig.patch
 Patch59:        fix-enable-disable-boot-initscript.patch
 Patch60:        var-run-lock.patch
+Patch63:        xdm-display-manager.patch
+Patch64:        fix-permissions-btmp.patch
 
 # Upstream First - Policy:
 # Never add any patches to this package without the upstream commit id
@@ -132,6 +135,14 @@
 Patch61:        fix-logind-pty-seat.patch
 # PATCH-FIX-UPSTREAM fix-build-glibc217.patch fcrozat@suse.com -- fix build with latest glibc
 Patch62:        fix-build-glibc217.patch
+# PATCH-FIX-UPSTREAM fix-bad-memory-access.patch fcrozat@suse.com -- fix bad memory access
+Patch65:        fix-bad-memory-access.patch
+# PATCH-FIX-UPSTREAM fix-dbus-crash.patch fcrozat@suse.com -- fix D-Bus caused crash
+Patch66:        fix-dbus-crash.patch
+# PATCH-FIX-UPSTREAM sync-on-shutdown.patch fcrozat@suse.com -- Sync on shutdown
+Patch67:        sync-on-shutdown.patch
+# PATCH-FIX-UPSTREAM mount-efivars.patch fcrozat@suse.com -- mount efivars if booting under UEFI
+Patch68:        mount-efivars.patch
 
 # udev patches
 # PATCH-FIX-OPENSUSE 0001-Reinstate-TIMEOUT-handling.patch
@@ -146,8 +157,6 @@
 # PATCH-FIX-OPENSUSE 0027-udev-fix-sg-autoload-regression.patch
 Patch1027:      0027-udev-fix-sg-autoload-regression.patch
 
-# systemd patches
-
 %description
 Systemd is a system and service manager, compatible with SysV and LSB
 init scripts for Linux. systemd provides aggressive parallelization
@@ -308,6 +317,7 @@
 %patch1026 -p1
 %patch1027 -p1
 
+#systemd
 %patch1 -p1
 %patch6 -p1
 # don't apply when bootstrapping to not modify configure.in
@@ -332,6 +342,12 @@
 %patch60 -p1
 %patch61 -p1
 %patch62 -p1
+%patch63 -p1
+%patch64 -p1
+%patch65 -p1
+%patch66 -p1
+%patch67 -p1
+%patch68 -p1
 
 %build
 autoreconf -fiv
@@ -363,8 +379,14 @@
 ln -sf %{_bindir}/systemd-ask-password $RPM_BUILD_ROOT/bin/systemd-ask-password
 ln -sf %{_bindir}/systemctl $RPM_BUILD_ROOT/bin/systemctl
 ln -sf %{_prefix}/lib/systemd/systemd-udevd $RPM_BUILD_ROOT/sbin/udevd
+%if ! 0%{?bootstrap}
+ln -sf systemd-udevd.8 $RPM_BUILD_ROOT/%{_mandir}/man8/udevd.8
+%endif
 mkdir -p $RPM_BUILD_ROOT/%{_prefix}/usr/lib/firmware/updates
 ln -sf /lib/firmware $RPM_BUILD_ROOT/usr/lib/firmware
+%if ! 0%{?bootstrap}
+install -m755 -D %{S:8} $RPM_BUILD_ROOT/etc/init.d/systemd-journald
+%endif
 
 install -m755 -D %{S:1060} $RPM_BUILD_ROOT/etc/init.d/boot.udev
 ln -s systemd-udevd.service $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/udev.service
@@ -373,11 +395,6 @@
 mkdir -p $RPM_BUILD_ROOT/lib/systemd/system/basic.target.wants
 ln -sf ../udev-root-symlink.service $RPM_BUILD_ROOT/%{_prefix}/lib/systemd/system/basic.target.wants
 
-#fix manpages
-%if ! 0%{?bootstrap}
-sed -i -e 's,^\(\.so \)\(.*\.\)\([0-9]\),\1man\3/\2\3,g' %{buildroot}/%{_mandir}/*/*
-%endif
-
 #workaround for 716939
 chmod 644 %{buildroot}%{_bindir}/systemd-analyze
 mkdir -p %{buildroot}%{_sysconfdir}/rpm
@@ -387,7 +404,7 @@
 
 install -m755 %{S:3} -D %{buildroot}%{_sbindir}/systemd-sysv-convert
 # do not install, code has been fixed, might be useful in the future
-#install -m755 %{S:5} %{buildroot}/lib/systemd/system-generators
+#install -m755 %{S:5} %{buildroot}/usr/lib/systemd/system-generators
 ln -s ../usr/lib/systemd/systemd %{buildroot}/bin/systemd
 ln -s ../usr/lib/systemd/systemd %{buildroot}/sbin/init
 ln -s ../usr/bin/systemctl %{buildroot}/sbin/reboot
@@ -410,8 +427,7 @@
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/ldconfig.service
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/loadmodules.service
 install -m644 %{S:2} %{buildroot}/%{_prefix}/lib/systemd/system/localfs.service
-# need to be implemented in systemd directly
-#ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/localnet.service
+ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/localnet.service
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/proc.service
 ln -s systemd-fsck-root.service %{buildroot}/%{_prefix}/lib/systemd/system/rootfsck.service
 ln -s /dev/null %{buildroot}/%{_prefix}/lib/systemd/system/single.service
@@ -437,8 +453,12 @@
 %endif
 
 # legacy links
-ln -s loginctl %{buildroot}%{_bindir}/systemd-loginctl
-ln -s journalctl %{buildroot}%{_bindir}/systemd-journalctl
+for f in loginctl journalctl ; do 
+  ln -s $f %{buildroot}%{_bindir}/systemd-$f
+%if ! 0%{?bootstrap}
+  ln -s $f.1 %{buildroot}%{_mandir}/man1/systemd-$f.1
+%endif
+done
 ln -s /usr/lib/udev %{buildroot}/lib/udev
 
 # Create the /var/log/journal directory to change the volatile journal to a persistent one
@@ -527,6 +547,8 @@
 elif [ ! -e /lib/udev ]; then
   ln -s /usr/lib/udev /lib/udev
 fi
+# Create "tape" group which is referenced by 50-udev-default.rules and 60-persistent-storage-tape.rules
+/usr/sbin/groupadd -r tape 2> /dev/null || :
 # kill daemon if we are not in a chroot
 if test -f /proc/1/exe -a -d /proc/1/root ; then
         if test "$(stat -Lc '%%D-%%i' /)" = "$(stat -Lc '%%D-%%i' /proc/1/root)"; then
@@ -719,6 +741,10 @@
 %exclude %{_mandir}/man8/telinit.8*
 %exclude %{_mandir}/man8/runlevel.8*
 %exclude %{_mandir}/man*/*udev*.[0-9]*
+
+# Packaged in analyze subpackage
+%exclude %{_mandir}/man1/systemd-analyze.1*
+
 %{_mandir}/man1/*.1*
 %{_mandir}/man3/*.3*
 %{_mandir}/man5/*.5*
@@ -782,7 +808,11 @@
 %endif
 
 %files analyze
+%defattr(-,root,root)
 %attr(0755,root,root) /usr/bin/systemd-analyze
+%if ! 0%{?bootstrap}
+%{_mandir}/man1/systemd-analyze.1*
+%endif
 
 %files -n %{udevpkgname}
 %defattr(-,root,root)
@@ -873,6 +903,7 @@
 %defattr(-,root,root)
 %dir /var/log/journal
 /var/log/README
+/etc/init.d/systemd-journald
 
 %endif
 
Index: fix-bad-memory-access.patch
===================================================================
--- fix-bad-memory-access.patch (added)
+++ fix-bad-memory-access.patch (revision 5)
@@ -0,0 +1,23 @@
+From 7d73c1343be02a59b17de0cd34375deeb815d89c Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Tue, 20 Nov 2012 00:19:27 +0100
+Subject: [PATCH] journald: fix bad memory access
+
+https://bugzilla.redhat.com/show_bug.cgi?id=875653
+---
+ src/journal/journald-server.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: systemd-195/src/journal/journald.c
+===================================================================
+--- systemd-195.orig/src/journal/journald.c
++++ systemd-195/src/journal/journald.c
+@@ -342,7 +342,7 @@ static void server_rotate(Server *s) {
+         HASHMAP_FOREACH_KEY(f, k, s->user_journals, i) {
+                 r = journal_file_rotate(&f, s->compress, s->seal);
+                 if (r < 0)
+-                        if (f->path)
++                        if (f)
+                                 log_error("Failed to rotate %s: %s", f->path, strerror(-r));
+                         else
+                                 log_error("Failed to create user journal: %s", strerror(-r));
Index: fix-dbus-crash.patch
===================================================================
--- fix-dbus-crash.patch (added)
+++ fix-dbus-crash.patch (revision 5)
@@ -0,0 +1,32 @@
+From 645a9e5a2bbb06464a3fba1a3501e9d79e5bbad8 Mon Sep 17 00:00:00 2001
+From: Eelco Dolstra <eelco.dolstra@logicblox.com>
+Date: Wed, 31 Oct 2012 11:53:56 +0100
+Subject: [PATCH] dbus-manager: fix a fatal dbus abort in
+ bus_manager_message_handler()
+
+If ListUnitFiles fails, or an OOM occurs, then dbus_message_unref()
+will be called twice on "reply", causing systemd to crash.  So remove
+the call to dbus_message_unref(); it is unnecessary because of
+the cleanup attribute on "reply".
+
+[zj: modified to leave one dbus_message_unref() alone, per Colin
+Walters' comment.]
+---
+ src/core/dbus-manager.c |    1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c
+index 2010241..3cf3e90 100644
+--- a/src/core/dbus-manager.c
++++ b/src/core/dbus-manager.c
+@@ -1436,7 +1436,6 @@ static DBusHandlerResult bus_manager_message_handler(DBusConnection *connection,
+                 r = unit_file_get_list(m->running_as == SYSTEMD_SYSTEM ? UNIT_FILE_SYSTEM : UNIT_FILE_USER, NULL, h);
+                 if (r < 0) {
+                         unit_file_list_free(h);
+-                        dbus_message_unref(reply);
+                         return bus_send_error_reply(connection, message, NULL, r);
+                 }
+ 
+-- 
+1.7.10.4
+
Index: fix-permissions-btmp.patch
===================================================================
--- fix-permissions-btmp.patch (added)
+++ fix-permissions-btmp.patch (revision 5)
@@ -0,0 +1,13 @@
+Index: systemd-44/tmpfiles.d/systemd.conf
+===================================================================
+--- systemd-44.orig/tmpfiles.d/systemd.conf
++++ systemd-44/tmpfiles.d/systemd.conf
+@@ -11,7 +11,7 @@ d /run/user 0755 root root 10d
+ F /run/utmp 0664 root utmp -
+ 
+ f /var/log/wtmp 0664 root utmp -
+-f /var/log/btmp 0600 root utmp -
++f /var/log/btmp 0600 root root -
+ 
+ d /var/cache/man - - - 30d
+ 
Index: mount-efivars.patch
===================================================================
--- mount-efivars.patch (added)
+++ mount-efivars.patch (revision 5)
@@ -0,0 +1,336 @@
+From f271dd97622b656c1c013d181ea615c671cc2438 Mon Sep 17 00:00:00 2001
+From: "Lee, Chun-Yi" <joeyli.kernel@gmail.com>
+Date: Sat, 27 Oct 2012 11:23:22 +0800
+Subject: [PATCH] systemd: mount the EFI variable filesystem
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Add efivarfs to the mount_table in mount-setup.c, so the EFI variable
+filesystem will be mounted when systemd executed.
+
+The EFI variable filesystem will merge in v3.7 or v3.8 linux kernel.
+
+Cc: Kay Sievers <kay@vrfy.org>
+Cc: Lennart Poettering <lennart@poettering.net>
+Cc: Mantas Mikulėnas <grawity@gmail.com>
+Cc: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
+Cc: Matt Fleming <matt.fleming@intel.com>
+Cc: Jeremy Kerr <jeremy.kerr@canonical.com>
+Cc: Matthew Garrett <mjg@redhat.com>
+Signed-off-by: Lee, Chun-Yi <jlee@suse.com>
+---
+ src/core/kmod-setup.c  |    7 ++++---
+ src/core/mount-setup.c |    1 +
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c
+index cc2a2d9..ce8a8e7 100644
+--- a/src/core/kmod-setup.c
++++ b/src/core/kmod-setup.c
+@@ -31,9 +31,10 @@
+ #include "kmod-setup.h"
+ 
+ static const char * const kmod_table[] = {
+-        "autofs4", "/sys/class/misc/autofs",
+-        "ipv6",    "/sys/module/ipv6",
+-        "unix",    "/proc/net/unix"
++        "autofs4",  "/sys/class/misc/autofs",
++        "ipv6",     "/sys/module/ipv6",
++        "efivarfs", "/sys/firmware/efi/efivars",
++        "unix",     "/proc/net/unix"
+ };
+ 
+ #pragma GCC diagnostic push
+diff --git a/src/core/mount-setup.c b/src/core/mount-setup.c
+index 0fd112f..9894c7f 100644
+--- a/src/core/mount-setup.c
++++ b/src/core/mount-setup.c
+@@ -66,6 +66,7 @@ static const MountPoint mount_table[] = {
+         { "sysfs",    "/sys",                   "sysfs",    NULL,                MS_NOSUID|MS_NOEXEC|MS_NODEV,                true,  true  },
+         { "devtmpfs", "/dev",                   "devtmpfs", "mode=755",          MS_NOSUID|MS_STRICTATIME,                    true,  true  },
+         { "securityfs", "/sys/kernel/security", "securityfs", NULL,              MS_NOSUID|MS_NOEXEC|MS_NODEV,                false, false },
++        { "efivarfs", "/sys/firmware/efi/efivars", "efivarfs", NULL,             MS_NOSUID|MS_NOEXEC|MS_NODEV,                false, false },
+         { "tmpfs",    "/dev/shm",               "tmpfs",    "mode=1777",         MS_NOSUID|MS_NODEV|MS_STRICTATIME,           true,  true  },
+         { "devpts",   "/dev/pts",               "devpts",   "mode=620,gid=" STRINGIFY(TTY_GID), MS_NOSUID|MS_NOEXEC,          false, true  },
+         { "tmpfs",    "/run",                   "tmpfs",    "mode=755",          MS_NOSUID|MS_NODEV|MS_STRICTATIME,           true,  true  },
+-- 
+1.7.10.4
+
+From c1e5704657315b436c0409e8172c1fcb76adccad Mon Sep 17 00:00:00 2001
+From: Kay Sievers <kay@vrfy.org>
+Date: Sun, 4 Nov 2012 16:06:27 +0100
+Subject: [PATCH] shared: add is_efiboot()
+
+---
+ src/shared/util.c |    4 ++++
+ src/shared/util.h |    2 ++
+ 2 files changed, 6 insertions(+)
+
+diff --git a/src/shared/util.c b/src/shared/util.c
+index 2a8afae..9983695 100644
+--- a/src/shared/util.c
++++ b/src/shared/util.c
+@@ -77,6 +77,10 @@ char **saved_argv = NULL;
+ static volatile unsigned cached_columns = 0;
+ static volatile unsigned cached_lines = 0;
+ 
++bool is_efiboot(void) {
++        return access("/sys/firmware/efi", F_OK) >= 0;
++}
++
+ size_t page_size(void) {
+         static __thread size_t pgsz = 0;
+         long r;
+diff --git a/src/shared/util.h b/src/shared/util.h
+index e387b12..99972cc 100644
+--- a/src/shared/util.h
++++ b/src/shared/util.h
+@@ -90,6 +90,8 @@ union dirent_storage {
+ #define ANSI_HIGHLIGHT_YELLOW_ON "\x1B[1;33m"
+ #define ANSI_HIGHLIGHT_OFF "\x1B[0m"
+ 
++bool is_efiboot(void);
++
+ usec_t now(clockid_t clock);
+ 
+ dual_timestamp* dual_timestamp_get(dual_timestamp *ts);
+-- 
+1.7.10.4
+
+From 1022373284b7562431fb0a6dba45db8af089a0e3 Mon Sep 17 00:00:00 2001
+From: Kay Sievers <kay@vrfy.org>
+Date: Sun, 4 Nov 2012 16:54:19 +0100
+Subject: [PATCH] kmod-setup: add conditional module loading callback
+
+---
+ src/core/kmod-setup.c |   32 ++++++++++++++++++++------------
+ 1 file changed, 20 insertions(+), 12 deletions(-)
+
+diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c
+index ce8a8e7..383a6b2 100644
+--- a/src/core/kmod-setup.c
++++ b/src/core/kmod-setup.c
+@@ -30,11 +30,17 @@
+ 
+ #include "kmod-setup.h"
+ 
+-static const char * const kmod_table[] = {
+-        "autofs4",  "/sys/class/misc/autofs",
+-        "ipv6",     "/sys/module/ipv6",
+-        "efivarfs", "/sys/firmware/efi/efivars",
+-        "unix",     "/proc/net/unix"
++typedef struct Kmodule {
++        const char *name;
++        const char *directory;
++        bool (*condition_fn)(void);
++} KModule;
++
++static const KModule kmod_table[] = {
++        { "autofs4",  "/sys/class/misc/autofs",    NULL } ,
++        { "ipv6",     "/sys/module/ipv6",          NULL },
++        { "efivarfs", "/sys/firmware/efi/efivars", NULL },
++        { "unix",     "/proc/net/unix",            NULL } ,
+ };
+ 
+ #pragma GCC diagnostic push
+@@ -42,7 +48,8 @@ static const char * const kmod_table[] = {
+ static void systemd_kmod_log(void *data, int priority, const char *file, int line,
+                              const char *fn, const char *format, va_list args)
+ {
+-        log_metav(priority, file, line, fn, format, args);
++        /* library logging is enabled at debug only */
++        log_metav(LOG_DEBUG, file, line, fn, format, args);
+ }
+ #pragma GCC diagnostic pop
+ 
+@@ -53,13 +60,15 @@ int kmod_setup(void) {
+         int err;
+ 
+         for (i = 0; i < ELEMENTSOF(kmod_table); i += 2) {
++                if (kmod_table[i].condition_fn && !kmod_table[i].condition_fn())
++                        continue;
+ 
+-                if (access(kmod_table[i+1], F_OK) >= 0)
++                if (access(kmod_table[i].directory, F_OK) >= 0)
+                         continue;
+ 
+                 log_debug("Your kernel apparently lacks built-in %s support. Might be a good idea to compile it in. "
+                           "We'll now try to work around this by loading the module...",
+-                          kmod_table[i]);
++                          kmod_table[i].name);
+ 
+                 if (!ctx) {
+                         ctx = kmod_new(NULL, NULL);
+@@ -69,13 +78,12 @@ int kmod_setup(void) {
+                         }
+ 
+                         kmod_set_log_fn(ctx, systemd_kmod_log, NULL);
+-
+                         kmod_load_resources(ctx);
+                 }
+ 
+-                err = kmod_module_new_from_name(ctx, kmod_table[i], &mod);
++                err = kmod_module_new_from_name(ctx, kmod_table[i].name, &mod);
+                 if (err < 0) {
+-                        log_error("Failed to load module '%s'", kmod_table[i]);
++                        log_error("Failed to lookup module '%s'", kmod_table[i].name);
+                         continue;
+                 }
+ 
+@@ -85,7 +93,7 @@ int kmod_setup(void) {
+                 else if (err == KMOD_PROBE_APPLY_BLACKLIST)
+                         log_info("Module '%s' is blacklisted", kmod_module_get_name(mod));
+                 else
+-                        log_error("Failed to insert '%s'", kmod_module_get_name(mod));
++                        log_error("Failed to insert module '%s'", kmod_module_get_name(mod));
+ 
+                 kmod_module_unref(mod);
+         }
+-- 
+1.7.10.4
+
+From 3dfb265083347cb5700dc38f7cc0f479f378e6e9 Mon Sep 17 00:00:00 2001
+From: Kay Sievers <kay@vrfy.org>
+Date: Sun, 4 Nov 2012 16:55:23 +0100
+Subject: [PATCH] kmod-setup: mounting efivarfs, *after* we tried to mount it,
+ is pointless
+
+The mount() system call, which we issue before loading modules, will trigger
+a modprobe by the kernel and block until it returns. Trying to load it again
+later, will have exactly the same result as the first time.
+---
+ src/core/kmod-setup.c |    1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c
+index 383a6b2..20ab232 100644
+--- a/src/core/kmod-setup.c
++++ b/src/core/kmod-setup.c
+@@ -39,7 +39,6 @@ typedef struct Kmodule {
+ static const KModule kmod_table[] = {
+         { "autofs4",  "/sys/class/misc/autofs",    NULL } ,
+         { "ipv6",     "/sys/module/ipv6",          NULL },
+-        { "efivarfs", "/sys/firmware/efi/efivars", NULL },
+         { "unix",     "/proc/net/unix",            NULL } ,
+ };
+ 
+-- 
+1.7.10.4
+
+From 6aa220e019f9dffd96590b06b68f937985204109 Mon Sep 17 00:00:00 2001
+From: Kay Sievers <kay@vrfy.org>
+Date: Sun, 4 Nov 2012 17:03:48 +0100
+Subject: [PATCH] mount-setup: try mounting 'efivarfs' only if the system
+ bootet with EFI
+
+---
+ TODO                   |    3 ---
+ src/core/mount-setup.c |   50 ++++++++++++++++++++++++++++++++----------------
+ 2 files changed, 34 insertions(+), 19 deletions(-)
+
+diff --git a/src/core/mount-setup.c b/src/core/mount-setup.c
+index 9894c7f..98614d0 100644
+--- a/src/core/mount-setup.c
++++ b/src/core/mount-setup.c
+@@ -46,14 +46,20 @@
+ #define TTY_GID 5
+ #endif
+ 
++typedef enum MountMode {
++        MNT_NONE  =        0,
++        MNT_FATAL =        1 <<  0,
++        MNT_IN_CONTAINER = 1 <<  1,
++} MountMode;
++
+ typedef struct MountPoint {
+         const char *what;
+         const char *where;
+         const char *type;
+         const char *options;
+         unsigned long flags;
+-        bool fatal;
+-        bool in_container;
++        bool (*condition_fn)(void);
++        MountMode mode;
+ } MountPoint;
+ 
+ /* The first three entries we might need before SELinux is up. The
+@@ -62,16 +68,26 @@ typedef struct MountPoint {
+ #define N_EARLY_MOUNT 4
+ 
+ static const MountPoint mount_table[] = {
+-        { "proc",     "/proc",                  "proc",     NULL,                MS_NOSUID|MS_NOEXEC|MS_NODEV,                true,  true  },
+-        { "sysfs",    "/sys",                   "sysfs",    NULL,                MS_NOSUID|MS_NOEXEC|MS_NODEV,                true,  true  },
+-        { "devtmpfs", "/dev",                   "devtmpfs", "mode=755",          MS_NOSUID|MS_STRICTATIME,                    true,  true  },
+-        { "securityfs", "/sys/kernel/security", "securityfs", NULL,              MS_NOSUID|MS_NOEXEC|MS_NODEV,                false, false },
+-        { "efivarfs", "/sys/firmware/efi/efivars", "efivarfs", NULL,             MS_NOSUID|MS_NOEXEC|MS_NODEV,                false, false },
+-        { "tmpfs",    "/dev/shm",               "tmpfs",    "mode=1777",         MS_NOSUID|MS_NODEV|MS_STRICTATIME,           true,  true  },
+-        { "devpts",   "/dev/pts",               "devpts",   "mode=620,gid=" STRINGIFY(TTY_GID), MS_NOSUID|MS_NOEXEC,          false, true  },
+-        { "tmpfs",    "/run",                   "tmpfs",    "mode=755",          MS_NOSUID|MS_NODEV|MS_STRICTATIME,           true,  true  },
+-        { "tmpfs",    "/sys/fs/cgroup",         "tmpfs",    "mode=755",          MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_STRICTATIME, false, true  },
+-        { "cgroup",   "/sys/fs/cgroup/systemd", "cgroup",   "none,name=systemd", MS_NOSUID|MS_NOEXEC|MS_NODEV,                false, true  },
++        { "proc",       "/proc",                     "proc",       NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
++          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
++        { "sysfs",      "/sys",                      "sysfs",      NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
++          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
++        { "devtmpfs",   "/dev",                      "devtmpfs",   "mode=755", MS_NOSUID|MS_STRICTATIME,
++          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
++        { "securityfs", "/sys/kernel/security",      "securityfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
++          NULL,       MNT_NONE },
++        { "efivarfs",   "/sys/firmware/efi/efivars", "efivarfs",   NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
++          is_efiboot, MNT_NONE },
++        { "tmpfs",      "/dev/shm",                  "tmpfs",      "mode=1777", MS_NOSUID|MS_NODEV|MS_STRICTATIME,
++          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
++        { "devpts",     "/dev/pts",                  "devpts",     "mode=620,gid=" STRINGIFY(TTY_GID), MS_NOSUID|MS_NOEXEC,
++          NULL,       MNT_IN_CONTAINER },
++        { "tmpfs",      "/run",                      "tmpfs",      "mode=755", MS_NOSUID|MS_NODEV|MS_STRICTATIME,
++          NULL,       MNT_FATAL|MNT_IN_CONTAINER },
++        { "tmpfs",      "/sys/fs/cgroup",            "tmpfs",      "mode=755", MS_NOSUID|MS_NOEXEC|MS_NODEV|MS_STRICTATIME,
++          NULL,       MNT_IN_CONTAINER },
++        { "cgroup",     "/sys/fs/cgroup/systemd",    "cgroup",     "none,name=systemd", MS_NOSUID|MS_NOEXEC|MS_NODEV,
++          NULL,       MNT_IN_CONTAINER },
+ };
+ 
+ /* These are API file systems that might be mounted by other software,
+@@ -119,6 +135,9 @@ static int mount_one(const MountPoint *p, bool relabel) {
+ 
+         assert(p);
+ 
++        if (p->condition_fn && !p->condition_fn())
++                return 0;
++
+         /* Relabel first, just in case */
+         if (relabel)
+                 label_fix(p->where, true, true);
+@@ -131,7 +150,7 @@ static int mount_one(const MountPoint *p, bool relabel) {
+                 return 0;
+ 
+         /* Skip securityfs in a container */
+-        if (!p->in_container && detect_container(NULL) > 0)
++        if (!(p->mode & MNT_IN_CONTAINER) && detect_container(NULL) > 0)
+                 return 0;
+ 
+         /* The access mode here doesn't really matter too much, since
+@@ -149,8 +168,8 @@ static int mount_one(const MountPoint *p, bool relabel) {
+                   p->type,
+                   p->flags,
+                   p->options) < 0) {
+-                log_full(p->fatal ? LOG_ERR : LOG_DEBUG, "Failed to mount %s: %s", p->where, strerror(errno));
+-                return p->fatal ? -errno : 0;
++                log_full((p->mode & MNT_FATAL) ? LOG_ERR : LOG_DEBUG, "Failed to mount %s: %s", p->where, strerror(errno));
++                return (p->mode & MNT_FATAL) ? -errno : 0;
+         }
+ 
+         /* Relabel again, since we now mounted something fresh here */
+@@ -289,7 +308,6 @@ int mount_cgroup_controllers(char ***join_controllers) {
+                 p.type = "cgroup";
+                 p.options = options;
+                 p.flags = MS_NOSUID|MS_NOEXEC|MS_NODEV;
+-                p.fatal = false;
+ 
+                 r = mount_one(&p, true);
+                 free(controller);
+-- 
+1.7.10.4
+
Index: sync-on-shutdown.patch
===================================================================
--- sync-on-shutdown.patch (added)
+++ sync-on-shutdown.patch (revision 5)
@@ -0,0 +1,49 @@
+From 0049f05a8bb82c3e084bacc5945596761d706c55 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 16 Nov 2012 01:30:29 +0100
+Subject: [PATCH] shutdown: readd explicit sync() when shutting down
+
+As it turns out reboot() doesn't actually imply a file system sync, but
+only a disk sync. Accordingly, readd explicit sync() invocations
+immediately before we invoke reboot().
+
+This is much less dramatic than it might sounds as we umount all
+disks/read-only remount them anyway before going down.
+---
+ src/core/service.c  |    1 +
+ src/core/shutdown.c |    7 +++++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/src/core/service.c b/src/core/service.c
+index cf08485..df72aba 100644
+--- a/src/core/service.c
++++ b/src/core/service.c
+@@ -2485,6 +2485,7 @@ static int service_start_limit_test(Service *s) {
+ 
+         case SERVICE_START_LIMIT_REBOOT_IMMEDIATE:
+                 log_warning("%s start request repeated too quickly, rebooting immediately.", UNIT(s)->id);
++                sync();
+                 reboot(RB_AUTOBOOT);
+                 break;
+ 
+diff --git a/src/core/shutdown.c b/src/core/shutdown.c
+index cc8c57b..b59aef1 100644
+--- a/src/core/shutdown.c
++++ b/src/core/shutdown.c
+@@ -273,6 +273,13 @@ int main(int argc, char *argv[]) {
+                 }
+         }
+ 
++        /* The kernel will automaticall flush ATA disks and suchlike
++         * on reboot(), but the file systems need to be synce'd
++         * explicitly in advance. So let's do this here, but not
++         * needlessly slow down containers. */
++        if (!in_container)
++                sync();
++
+         if (cmd == LINUX_REBOOT_CMD_KEXEC) {
+ 
+                 if (!in_container) {
+-- 
+1.7.10.4
+
Index: systemd-journald.init
===================================================================
--- systemd-journald.init (added)
+++ systemd-journald.init (revision 5)
@@ -0,0 +1,33 @@
+#! /bin/sh
+#
+# Copyright (c) 2001-2002 SuSE Linux AG, Nuernberg, Germany.
+# All rights reserved.
+#
+# /etc/init.d/systemd-journald
+#
+### BEGIN INIT INFO
+# Provides:          syslog
+# Required-Start:    $null
+# Required-Stop:     $null
+# Default-Start:     2 3 5
+# Default-Stop:
+# Short-Description: compat wrapper for journald
+# Description:       compat wrapper for journald
+### END INIT INFO
+
+. /etc/rc.status
+
+rc_reset
+
+case "$1" in
+  start|stop|restart)
+	rc_failed 3
+	rc_status -v
+	;;
+    *)
+	echo "Usage: $0 {start|stop|restart}"
+	exit 1
+	;;
+esac
+
+rc_exit
Index: xdm-display-manager.patch
===================================================================
--- xdm-display-manager.patch (added)
+++ xdm-display-manager.patch (revision 5)
@@ -0,0 +1,13 @@
+Index: systemd-195/units/graphical.target
+===================================================================
+--- systemd-195.orig/units/graphical.target
++++ systemd-195/units/graphical.target
+@@ -11,7 +11,7 @@ Documentation=man:systemd.special(7)
+ Requires=multi-user.target
+ After=multi-user.target
+ Conflicts=rescue.target
+-Wants=display-manager.service
++Wants=xdm.service
+ AllowIsolate=yes
+ 
+ [Install]

OBS-URL: https://build.opensuse.org/request/show/142041
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=312
2012-11-20 12:10:12 +00:00