diff options
author | Lennart Poettering <lennart@poettering.net> | 2012-05-23 03:43:29 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2012-05-23 03:43:29 +0200 |
commit | 07719a21b6425d378b36bb8d7f47ad5ec5296d28 (patch) | |
tree | 5195e8b0dd74a415f0d048398b8b1d25e9112e04 /src/system-update-generator | |
parent | 7c4c5f68a5dd55f33bf18ccccbc8a611703fc3e2 (diff) | |
download | systemd-07719a21b6425d378b36bb8d7f47ad5ec5296d28.tar.gz systemd-07719a21b6425d378b36bb8d7f47ad5ec5296d28.tar.bz2 systemd-07719a21b6425d378b36bb8d7f47ad5ec5296d28.zip |
manager: rework generator logic
Previously generated units were always placed at the end of the search
path. With this change there will be three unit dirs instead of one, to
place generated entries at the beginning, in the middle and at the end
of the search path:
beginning: for units that need to override all configuration, regardless
of user or vendor. Example use: system-update-generator uses this to
temporarily redirect default.target.
middle: for units that need to override vendor configuration, but not
vendor configuration. Example use: /etc/fstab should override vendor
supplied configuration (think /tmp), but should not override native user
configuration.
end: does not override anything but is available as well. Possible usage
might be to convert D-Bus bus service files to native units but allowing
vendor supplied native units to win.
Diffstat (limited to 'src/system-update-generator')
-rw-r--r-- | src/system-update-generator/system-update-generator.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/system-update-generator/system-update-generator.c b/src/system-update-generator/system-update-generator.c index f4e8dafebd..abda5a0190 100644 --- a/src/system-update-generator/system-update-generator.c +++ b/src/system-update-generator/system-update-generator.c @@ -66,13 +66,13 @@ static int generate_symlink(void) { int main(int argc, char *argv[]) { int r; - if (argc > 2) { - log_error("This program takes one or no arguments."); + if (argc > 1 && argc != 4) { + log_error("This program takes three or no arguments."); return EXIT_FAILURE; } if (argc > 1) - arg_dest = argv[1]; + arg_dest = argv[2]; log_set_target(LOG_TARGET_SAFE); log_parse_environment(); |