1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-01 09:21:26 +03:00
Commit Graph

386 Commits

Author SHA1 Message Date
Lucas Werkmeister
ef5a8cb1a7 analyze: add get-log-level, get-log-target verbs
They’re counterparts to the existing set-log-level and set-log-target
verbs, simply printing the current value to stdout. This makes it
slightly easier to temporarily change the log level and/or target and
then restore the old value(s).
2017-09-07 23:55:59 +02:00
Lucas Werkmeister
4146ac2a4c shell-completion: add systemd-analyze set-log-target
The `systemd-analyze set-log-target` command was added in v227 (commit
2ca2a91cf1), but was missing from the shell completion specifications.
2017-09-07 23:47:33 +02:00
Martin Pitt
9fcaa574f0 Merge pull request #6465 from keszybz/drop-kdbus
Drop kdbus-dependent code
2017-07-28 09:29:07 +02:00
Yu Watanabe
6bda23dd6a bash-completion: use the first argument instead of the global variable (#6457)
Without this fix:

$ systemctl start <tab>
Display all 135 possibilities? (y or n)
$ __get_startable_units --system | wc -l
224

the number of the suggestions are quite different, as __get_startable_units --system does
not filter already started units. With this fix,

$ systemctl start <tab>
Display all 135 possibilities? (y or n)
$ __get_startable_units --system | wc -l
123
$ __get_template_names --system | wc -l
12

the number of the suggestions matches one the function returns.
For consistency with the other internal functions, it should use the first argument
instead of the global variable $mode.

[zj: add commit message to make it sound like we know what we're doing]
2017-07-27 07:22:54 -04:00
Zbigniew Jędrzejewski-Szmek
4bc5d27b94 Drop busname unit type
Since busname units are only useful with kdbus, they weren't actively
used. This was dead code, only compile-tested. If busname units are
ever added back, it'll be cleaner to start from scratch (possibly reverting
parts of this patch).
2017-07-23 09:29:02 -04:00
Zbigniew Jędrzejewski-Szmek
e5f752082e build-sys: drop gitignore patterns for in-tree builds
... and other autotools-generated files.
2017-07-18 10:05:06 -04:00
Zbigniew Jędrzejewski-Szmek
72cdb3e783 build-sys: drop automake support
v2:
- also mention m4
2017-07-18 10:04:44 -04:00
Zbigniew Jędrzejewski-Szmek
a5be8dabd6 Add networkctl label to man and shell completion 2017-06-27 10:30:41 -04:00
Felipe Sateler
d739ce98f3 zsh: add completion for add-wants and add-requires (#6082) 2017-06-06 21:32:15 -04:00
Lucas Werkmeister
0f8158bd26 shell-completion: add systemctl revert (#6042)
The `systemctl revert` command was added in v230 (commit 344ca7556b),
but was missing from the shell completion specifications.

Fixes #5978.
2017-05-29 15:01:01 +02:00
Ian Wienand
7e563bfc97 Add short-iso-precise for journalctl output (#5884)
This adds a short-iso-precise option for journalctl output.  It is similar to
short-iso, but includes microseconds.
2017-05-07 20:23:49 -04:00
Zbigniew Jędrzejewski-Szmek
2c201c2140 meson: use booleans for conf.set and drop unecessary conditionals
Using conf.set() with a boolean argument does the right thing:
either #ifdef or #undef. This means that conf.set can be used unconditionally.

Previously I used '1' as the placeholder value, and that needs to be changed to
'true' for consistency (under meson 1 cannot be used in boolean context). All
checks need to be adjusted.
2017-05-02 16:29:11 -04:00
Zbigniew Jędrzejewski-Szmek
37efbbd821 meson: reindent all files with 8 spaces
The indentation for emacs'es meson-mode is added .dir-locals.

All files are reindented automatically, using the lasest meson-mode from git.
Indentation should now be fairly consistent.
2017-04-23 21:47:29 -04:00
Michael Biebl
e17e5ba9bf meson: use join_paths consistently
With -Dsplit-usr=true, we set rootprefix to /. This leads to //lib/systemd or
//lib/udev for various dir variables. Using join_paths() avoids this.
2017-04-23 21:47:28 -04:00
Zbigniew Jędrzejewski-Szmek
5c23128dab meson: build systemd using meson
It's crucial that we can build systemd using VS2010!

... er, wait, no, that's not the official reason. We need to shed old systems
by requring python 3! Oh, no, it's something else. Maybe we need to throw out
345 years of knowlege accumulated in autotools? Whatever, this new thing is
cool and shiny, let's use it.

This is not complete, I'm throwing it out here for your amusement and critique.

- rules for sd-boot are missing. Those might be quite complicated.

- rules for tests are missing too. Those are probably quite simple and
  repetitive, but there's lots of them.

- it's likely that I didn't get all the conditions right, I only tested "full"
  compilation where most deps are provided and nothing is disabled.

- busname.target and all .busname units are skipped on purpose.

  Otherwise, installation into $DESTDIR has the same list of files and the
  autoconf install, except for .la files.

It'd be great if people had a careful look at all the library linking options.
I added stuff until things compiled, and in the end there's much less linking
then in the old system. But it seems that there's still a lot of unnecessary
deps.

meson has a `shared_module` statement, which sounds like something appropriate
for our nss and pam modules. Unfortunately, I couldn't get it to work. For the
nss modules, we need an .so version of '2', but `shared_module` disallows the
version argument. For the pam module, it also didn't work, I forgot the reason.

The handling of .m4 and .in and .m4.in files is rather awkward. It's likely
that this could be simplified. If make support is ever dropped, I think it'd
make sense to switch to a different templating system so that two different
languages and not required, which would make everything simpler yet.

v2:
- use get_pkgconfig_variable
- use sh not bash
- use add_project_arguments

v3:
- drop required:true and fix progs/prog typo

v4:
- use find_library('bz2')
- add TTY_GID definition
- define __SANE_USERSPACE_TYPES__
- use join_paths(prefix, ...) is used on all paths to make them all absolute

v5:
- replace all declare_dependency's with []
- add more conf.get guards around optional components

v6:
- drop -pipe, -Wall which are the default in meson
- use compiler.has_function() and compiler.has_header_symbol instead of the
  hand-rolled checks.
- fix duplication in 'liblibsystemd' library name
- use the right .sym file for pam_systemd
- rename 'compiler' to 'cc': shorter, and more idiomatic.

v7:
- use ENABLE_ENVIRONMENT_D not HAVE_ENVIRONMENT_D
- rename prefix to prefixdir, rootprefix to rootprefixdir
  ("prefix" is too common of a name and too easy to overwrite by mistake)
- wrap more stuff with conf.get('ENABLE...') == 1
- use rootprefix=='/' and rootbindir as install_dir, to fix paths under
  split-usr==true.

v8:
- use .split() also for src/coredump. Now everything is consistent ;)
- add rootlibdir option and use it on the libraries that require it

v9:
- indentation

v10:
- fix check for qrencode and libaudit

v11:
- unify handling of executable paths, provide options for all progs

  This makes the meson build behave slightly differently than the
  autoconf-based one, because we always first try to find the executable in the
  filesystem, and fall back to the default. I think different handling of
  loadkeys, setfont, and telinit was just a historical accident.

  In addition to checking in $PATH, also check /usr/sbin/, /sbin for programs.
  In Fedora $PATH includes /usr/sbin, (and /sbin is is a symlink to /usr/sbin),
  but in Debian, those directories are not included in the path.

  C.f. https://github.com/mesonbuild/meson/issues/1576.

- call all the options 'xxx-path' for clarity.
- sort man/rules/meson.build properly so it's stable
2017-04-23 21:47:26 -04:00
David Herrmann
34b52450c5 hostname: add 'convertible' chassis type
Add the 'convertible' type to the set of allowed chassis. This applies
to all devices that can be transformed by the user from laptop style to
tablet style.

This does not add any auto-detection, yet. It only makes 'set-chassis'
accept 'convertible' as valid input.
2017-02-28 11:54:52 +01:00
Giedrius Statkevičius
15710d4479 shell-completion: include the new coredumpctl options 2017-02-24 21:30:59 +02:00
Namhyung Kim
5badf05f39 shell_completion: Add -r option for coredumpctl 2017-02-14 23:27:16 +09:00
Zbigniew Jędrzejewski-Szmek
bef19548a2 systemctl: restore --failed (#5198)
'systemctl --failed' is an extremely common operation and it's nice to have
a shortcut for it.

Revert "man: don't document systemctl --failed" and add the option back to
systemctl's help and shell completion scripts.

This reverts commit 036359ba8d.
2017-02-02 00:23:46 +01:00
llua
644317741a zsh-completion: _journalctl fixes (#5165)
allow _journalctl to work when the rcquotes option is set, broken in ba89f80620.
allow the completion of --file multiple times, which ba89f80620 claims is true.

Fixes #4842
2017-01-27 09:50:40 -03:00
Jan Synacek
0067c7b29a bash-completion: add support for --now (#5155) 2017-01-25 07:44:04 -05:00
Александр Тихонов
88e4dbd505 Fixi caching in zsh completion (#5122)
I found several issues with zsh completion code:

1. typo in cache filename: "SYS_ALL_PROPRTIES", so cache just not loading from this file
2. cache stored in one file, despite user or system mode. So it can be loaded later in wrong mode
3. most serious problem: broken logic - it retrieves cache when _cache_invalid is true

How to reproduce: type "systemctl --user status <TAB>" and you will see user units. Then press 
control+C and type "systemctl --system status <TAB>" in same session and you'll see user units again
2017-01-21 14:53:09 -05:00
Namhyung Kim
28b6b5de3f bash_completion: journalctl: Complete -t option values
The -t or --identifier requires a syslog identifier.
2017-01-21 16:38:23 +09:00
Namhyung Kim
ed52c971bf bash_completion: journalctl: add missing options
The --no-hostname and --vacuum-files were missing, add them.
2017-01-21 16:38:04 +09:00
Zbigniew Jędrzejewski-Szmek
99171d2fdf shell-completion: redirect all errors from systemctl to /dev/null
Completion scripts should not generate errors, ever.

https://bugzilla.redhat.com/show_bug.cgi?id=1409649
2017-01-11 16:37:34 -05:00
Doug Christman
07d6181589 zsh-completion: fix typo and rephrase option hints (#4963) 2016-12-23 14:37:28 +01:00
Zbigniew Jędrzejewski-Szmek
869feb3388 analyze: add syscall-filter verb
This should make it easier for users to understand what each filter
means as the list of syscalls is updated in subsequent systemd versions.
2016-11-03 09:35:35 -04:00
llua
6c9414a700 zsh-completion: fix for #4318 (#4394)
Escape unit names for the eval call in _call_program

The value of the Id property is transformed back into a unit name
usable by systemctl.
system-systemd\x5cx2dcryptsetup.slice -> system-systemd\x2dcryptsetup.slice

Also filter units by property via parameter expansion, not a for loop
2016-10-17 14:35:26 +02:00
Lennart Poettering
40f45ff0c3 Merge pull request #4115 from yuwata/completion-fix
bash-completion: systemctl: do not pass masked or not-found units to filter
2016-10-11 17:05:19 +02:00
Davide Cavalca
c0f9116d6c shell-completion: add --wait to systemd-run completions (#4140) 2016-09-14 22:38:53 +02:00
Yu Watanabe
c07c80bc96 bash-completion: systemctl: use local variables 2016-09-14 15:22:45 +09:00
Yu Watanabe
b1bdb6496c bash-completion: systemctl: do not pass masked or not-found units to filter
Also, add new function __filter_units_by_properties() for filtering units by
multiple properties, and make __get_startable_units() use it.

fixes #4114
2016-09-09 16:20:05 +09:00
Marcos Mello
0cea2697ed shell-completion: add systemd-resolve --status (#4085)
From be371fe.
2016-09-02 12:18:11 +02:00
Daniel Hahler
b2fe35fe58 zsh: _journalctl: also handle --root arg and --key=value style (#3956)
This will now also handle `journalctl --directory=/var/log/journal`
properly.
2016-08-16 12:47:39 -04:00
Daniel Hahler
ba89f80620 zsh: _journalctl: do not complete exclusive modes (#3957)
After `journalctl -D /var/log/journal` "--directory", "--file",
"--machine" and "--root" should not be available for completion, because
they are exclusive.  But multiple `--file` arguments are allowed.
2016-08-16 12:42:41 -04:00
Daniel Hahler
e09d0d46c2 zsh: _systemctl: do not attempt to use "--system" by default (#3951)
In 68c4f6d the following was added:

    local -a _modes; _modes=("--user" "--system")
    local _sys_service_mgr=${${words:*_modes}[(R)(${(j.|.)_modes})]:---system}

With the following comment:

> If neither are on the line, --system is set; for system services to be
> completed.

But it does not work as documented:

    % _modes=(--user --system)
    % words=()
    % echo ${${words:*_modes}[(R)(${(j.|.)_modes})]:---system}

However, it should not use `--system` in that case anyway, so this patch
removes the part that should cause a default to be used and adds some
comments.
2016-08-13 10:42:55 -04:00
Daniel Hahler
d551b8fcf7 zsh: _journalctl: improve support for handling mode args (#3952)
This only completes fields from `journalctl --user` in _journal_fields when `--user`
is used.

It also changes $_sys_service_mgr to include both `--system` and `--user`,
because `journalctl` behaves different from `systemctl` in this regard.
No attempt is made to filter out invalid combinations, e.g. when using both
`--directory` and `--system` (see https://github.com/systemd/systemd/issues/3949).
2016-08-13 10:41:22 -04:00
Daniel Hahler
21d84318c3 zsh: _journalctl: handle --user in _journal_none
This uses the same mechanism from _systemctl to inject `--user` into the
`journalctrl -F _EXE` call to list executables.
Before this patch the "commands" section would list executables from
system units always.
2016-08-11 18:52:13 +02:00
Daniel Hahler
56ef545c24 zsh: _filter_units_by_property: respect --user
Use `$_sys_service_mgr` to handle `--user`, so that `systemctl --user
stop` will correctly filter the active (user) units.  Before this patch,
only user units that also exist as system units and are stoppable there
would be listed.
2016-08-11 18:46:31 +02:00
Lennart Poettering
29a753df76 journalctl: add new output mode "short-full" (#3880)
This new output mode formats all timestamps using the usual format_timestamp()
call we use pretty much everywhere else. Timestamps formatted this way are some
ways more useful than traditional syslog timestamps as they include weekday,
month and timezone information, while not being much longer. They are also not
locale-dependent. The primary advantage however is that they may be passed
directly to journalctl's --since= and --until= switches as soon as #3869 is
merged.

While we are at it, let's also add "short-unix" to shell completion.
2016-08-03 19:45:07 -04:00
Alessandro Puccetti
2a624c36e6 doc,core: Read{Write,Only}Paths= and InaccessiblePaths=
This patch renames Read{Write,Only}Directories= and InaccessibleDirectories=
to Read{Write,Only}Paths= and InaccessiblePaths=, previous names are kept
as aliases but they are not advertised in the documentation.

Renamed variables:
`read_write_dirs` --> `read_write_paths`
`read_only_dirs` --> `read_only_paths`
`inaccessible_dirs` --> `inaccessible_paths`
2016-07-19 17:22:02 +02:00
ntzrmtthihu777
b010a6a1ae zsh-completion: fix option ordering in set-x11-keymap (#3646) 2016-07-15 04:59:45 -04:00
Alessandro Puccetti
14ca5c9cb4 nspawn-completion: implementation of shell completion of --notify-ready (#3679)
Relative to: https://github.com/systemd/systemd/pull/3474
2016-07-08 17:44:20 +02:00
Christian Rebischke
b2bb19bbda machinectl: Added stop as alias for poweroff (#3406) 2016-06-06 17:06:20 +02:00
Lennart Poettering
67044a24c3 bash: use the actual journal fields used in the journal files for completion 2016-05-30 19:35:24 +02:00
Zbigniew Jędrzejewski-Szmek
ed1190498f tree-wide: remove uses of --failed
It has been replaced by --state=failed.
2016-05-08 20:27:33 -04:00
Felipe Sateler
673fca32be zsh-completion: remove non-portable uses of \s in awk (#3063) 2016-04-19 00:23:01 -04:00
Felipe Sateler
c54318c66f Add zsh completion for networkctl (#3062) 2016-04-18 23:27:42 +02:00
Evgeny Vereshchagin
6d94d993c7 bash completion: add --template to nspawn 2016-03-20 17:55:58 +00:00
Zbigniew Jędrzejewski-Szmek
e81eb2874e systemd-resolve: initial shell completion
v2:
- use /sys/class/net to list interfaces,
  also copy the same code to systemd-nspawn
v3:
- do not propose "any" twice for --type
2016-02-18 11:50:53 -05:00
Daniel Mack
50f48ad37a cgroup: remove support for NetClass= directive
Support for net_cls.class_id through the NetClass= configuration directive
has been added in v227 in preparation for a per-unit packet filter mechanism.
However, it turns out the kernel people have decided to deprecate the net_cls
and net_prio controllers in v2. Tejun provides a comprehensive justification
for this in his commit, which has landed during the merge window for kernel
v4.5:

  https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=bd1060a1d671

As we're aiming for full support for the v2 cgroup hierarchy, we can no
longer support this feature. Userspace tool such as nftables are moving over
to setting rules that are specific to the full cgroup path of a task, which
obsoletes these controllers anyway.

This commit removes support for tweaking details in the net_cls controller,
but keeps the NetClass= directive around for legacy compatibility reasons.
2016-02-10 16:38:56 +01:00
Dan Walsh
2720e0c0f0 Journalctl command completion should show machines 2016-02-08 07:22:34 -05:00
Zbigniew Jędrzejewski-Szmek
8cd095cc27 shell-completion: fix header 2016-02-06 17:54:48 -05:00
Lennart Poettering
aabf5d4243 systemctl: rename "reload-or-try-restart" verb to "try-reload-or-restart"
But also keep the old name as (undocumented) compatibility around.

The reload-or-try-restart was documented to be a NOP if the unit is not running, since the previous commits this is
also implemented. The old name suggests that the "try" logic only applies to restarting. Fix this, by moving the "try-"
to the front, to indicate that the whole option is a NOP if the service isn't running.
2016-01-28 18:57:04 +01:00
Douglas Christman
655fd9d71f zsh-completion: Escape results for journalctl --unit
Escape colons and backslashes in unit names.
This gives correct completions for units with names like
    systemd-backlight@backlight:acpi_video0.service
and
    systemd-fsck@dev-disk-by\x2duuid-...
2016-01-25 18:10:31 -05:00
Lennart Poettering
b43d75c378 importd: drop dkr support
The current code is not compatible with current dkr protocols anyway,
and dkr has a different focus ("microservices") than nspawn anyway
("whole machine containers"), hence drop support for it, we cannot
reasonably keep this up to date, and it creates the impression we'd
actually care for the microservices usecase.
2015-12-10 16:54:41 +01:00
Evgeny Vereshchagin
c2af810150 bash-completion: list valid signal names
this is a follow-up for commit 18540892d1
2015-11-24 16:05:42 +00:00
Zbigniew Jędrzejewski-Szmek
18540892d1 bash-completion: list only valid signal names
Fixup for #1999.
2015-11-24 09:39:49 -05:00
Evgeny Vereshchagin
d5d841ff9d bash-completion: nspawn: add completion for --kill-signal 2015-11-23 17:01:26 +00:00
Marcos Mello
1a51b1b1c2 shell-completion: journalctl: add --sync
From 94b6551
2015-11-15 14:04:15 -02:00
Filipe Brandenburger
b4c14404b3 execute: Add new PassEnvironment= directive
This directive allows passing environment variables from the system
manager to spawned services. Variables in the system manager can be set
inside a container by passing `--set-env=...` options to systemd-spawn.

Tested with an on-disk test.service unit. Tested using multiple variable
names on a single line, with an empty setting to clear the current list
of variables, with non-existing variables.

Tested using `systemd-run -p PassEnvironment=VARNAME` to confirm it
works with transient units.

Confirmed that `systemctl show` will display the PassEnvironment
settings.

Checked that man pages are generated correctly.

No regressions in `make check`.
2015-11-11 07:55:23 -08:00
Marcos Mello
23c35c82c4 shell-completion: journalctl: add -S and -U options
Added by 66f5292
2015-11-11 08:29:46 -02:00
Zbigniew Jędrzejewski-Szmek
36b4a7ba55 Remove snapshot unit type
Snapshots were never useful or used for anything. Many systemd
developers that I spoke to at systemd.conf2015, didn't even know they
existed, so it is fairly safe to assume that this type can be deleted
without harm.

The fundamental problem with snapshots is that the state of the system
is dynamic, devices come and go, users log in and out, timers fire...
and restoring all units to some state from the past would "undo"
those changes, which isn't really possible.

Tested by creating a snapshot, running the new binary, and checking
that the transition did not cause errors, and the snapshot is gone,
and snapshots cannot be created anymore.

New systemctl says:
Unknown operation snapshot.
Old systemctl says:
Failed to create snapshot: Support for snapshots has been removed.

IgnoreOnSnaphost settings are warned about and ignored:
Support for option IgnoreOnSnapshot= has been removed and it is ignored

http://lists.freedesktop.org/archives/systemd-devel/2015-November/034872.html
2015-11-10 19:33:06 -05:00
Lennart Poettering
51c41a97ec Merge pull request #1775 from fbuihuu/set-property-completion
bash-completion: add minimal support fpr 'set-property' command
2015-11-04 17:52:50 +01:00
Franck Bui
d82fabdb7f bash-completion: add minimal support fpr 'set-property' command
'set-property' was missing from the list of known command.

Also a list of unit names will be proposed as next argument.

However no support on property names is provided since it would
require a hard coded list of them.
2015-11-04 08:42:16 +01:00
Lennart Poettering
5732a7dbb0 Merge pull request #1690 from evverx/run-runtime-directory
systemd-run can launch units with RuntimeDirectory
2015-11-02 20:16:18 +01:00
Evgeny Vereshchagin
93557fcb5d shell-completion: systemctl: show completions for user in global mode 2015-10-30 04:55:32 +03:00
Evgeny Vereshchagin
1012972478 shell-completion: hostnamectl: add the command set-location 2015-10-29 07:47:16 +03:00
Evgeny Vereshchagin
dcebcd7ade shell-completion: systemd-run: add the property RuntimeDirectory 2015-10-27 05:18:12 +03:00
Evgeny Vereshchagin
64fa5643df shell-completion: systemd-run: add the property ProtectHome 2015-10-26 00:22:34 +00:00
Zbigniew Jędrzejewski-Szmek
5ef80f3bbb zsh-completion: journalctl --identifier
Fixes #1549.
2015-10-25 10:49:19 -04:00
Evgeny Vereshchagin
4e79ac4425 shell-completion: systemd-run: add the property ProtectSystem 2015-10-24 22:49:46 +00:00
Nicolas Cornu
7e7cd2526d shell-completion: systemd-run: add new property EnvironmentFile 2015-10-21 16:18:59 +02:00
Nicolas Cornu
5ffd7671cc Add zsh completion on systemd-run's properties 2015-10-21 15:51:09 +02:00
Evgeny Vereshchagin
64a713d94d shell-completion: systemd-run: add new properties
"ReadWriteDirectories", "ReadOnlyDirectories", "InaccessibleDirectories"
2015-10-20 22:03:49 +00:00
Evgeny Vereshchagin
e9cc999a30 shell-completion: systemd-run: add property OOMScoreAdjust 2015-10-17 20:03:40 +00:00
Evgeny Vereshchagin
8d2bc8e5fd shell-completion: systemd-run: add TimerSlackNSec property 2015-10-15 10:01:09 +00:00
Evgeny Vereshchagin
75d73dc9d0 shell-completion: systemd-run: add SyslogFacility property 2015-10-14 15:05:14 +00:00
Evgeny Vereshchagin
7135129e0a shell-completion: systemd-run: add SyslogLevel property 2015-10-14 14:48:55 +00:00
Lennart Poettering
b3ccac01cc zsh: don't mention /etc/mtab
The file is obsolete, use /proc/self/mounts instead.

Also, yuck, the code is so awful...
2015-10-09 17:20:32 +02:00
Evgeny Vereshchagin
dc800d8406 shell-completion: systemd-run: add new properties 2015-10-09 12:42:34 +00:00
Evgeny Vereshchagin
f961371fb7 shell-completion: systemd-run: add new properties
See:
* 602b83559a
* b9c50073fc
2015-10-09 06:49:46 +03:00
Lennart Poettering
1af1f2f92e shell-completion: add pseudo machine ".host" to shell completion 2015-10-08 15:14:27 +02:00
Lennart Poettering
56f3cb335a shell-completion: add "machinectl shell" to bash completion logic 2015-10-08 15:03:31 +02:00
Lennart Poettering
23a749f285 Merge pull request #1419 from keszybz/shell-completion
Shell completion tweaks
2015-09-30 22:32:09 +02:00
Evgeny Vereshchagin
0c66ffd8b9 shell-completion: journalctl: add --rotate 2015-09-30 22:58:05 +03:00
Zbigniew Jędrzejewski-Szmek
4ed2f1b1f1 bash-completion: remove one more sort and sub-shell
{} is preferred to (), because the first is just grouping, while the
second invokes a separate shell.
2015-09-28 17:23:53 -04:00
Zbigniew Jędrzejewski-Szmek
db79008804 bash-completion: use builtins when generating list 2015-09-28 15:42:27 -04:00
Zbigniew Jędrzejewski-Szmek
b00c1cf9d6 bash-completion: use builtins when generating list
awk is an external program, and it is better to stick to shell built-ins.

Also, even with external awk, sort -u is redundant, because the shell does
this on its own.
2015-09-28 15:23:04 -04:00
Zbigniew Jędrzejewski-Szmek
840b2c0e77 shell-completion: use systemctl --state=help
This way completion lists should stay up to date.

Also use systemctl -t help to list types in zsh, as was already
done in bash.
2015-09-28 15:10:03 -04:00
Evgeny Vereshchagin
043a090d7d shell-completion: nspawn: add missing values for --link-journal 2015-09-26 04:10:08 +03:00
Evgeny Vereshchagin
6409d3af08 shell-completion: journalctl: add missing options 2015-09-25 04:24:29 +03:00
Evgeny Vereshchagin
023dd03a42 shell-completion: journalctl: add missing fields 2015-09-25 03:52:07 +03:00
Evgeny Vereshchagin
a2accacb98 shell-completion: cgtop bash completion: add -r,--raw,-k,-P,--order 2015-09-21 17:33:00 +00:00
Evgeny Vereshchagin
79af4b6c1c shell-completion: cgtop bash completion: -n,--iterations,-d,--delay require arg 2015-09-21 17:09:40 +00:00
Evgeny Vereshchagin
73b73b762c shell-completion: update systemd-cgtop bash completion: --recursive 2015-09-21 16:54:58 +00:00
Evgeny Vereshchagin
96a6426f30 cgtop: add -M/--machine 2015-09-21 12:04:45 +00:00
Evgeny Vereshchagin
20ba8107a5 shell-completion: update systemd-analyze bash-completion
* Change --no-man to --man (see dad29df)
* --{from,to}-pattern require arg
2015-09-07 04:51:21 +03:00
Evgeny Vereshchagin
3a221b5df8 shell-completion: update systemctl bash completion
Many new options have been added since the bash completion was last
updated.
2015-09-04 23:04:10 +03:00
Evgeny Vereshchagin
8c7db2fb21 run: enable interactive authorization 2015-09-01 16:43:08 +00:00
Evgeny Vereshchagin
e50e53876f shell-completion: bash: add systemd-path completion 2015-08-31 19:24:16 +00:00
Evgeny Vereshchagin
e4f246b1b5 shell-completion: bash: add networkctl completion 2015-08-28 18:01:48 +00:00
Evgeny Vereshchagin
17e98b9177 shell-completion: add failed state to --state compwords 2015-08-28 00:36:02 +00:00
Evgeny Vereshchagin
20bde81923 shell-completion: update systemd-run bash completion
Many new options have been added since the bash completion was last
updated.
2015-08-27 23:30:11 +00:00
Seth Jennings
4acd40613f shell-completion: bash: make list-transfers and cancel-transfer STANDALONE
list-transfers and cancel-transfers don't take machine arguments.
2015-08-18 13:22:42 -05:00
Seth Jennings
2977883de2 shell-completion: bash: add image transfer subcommands 2015-08-18 13:20:12 -05:00
Lennart Poettering
7b0991c617 Merge pull request #931 from spartacus06/update-completion-machinectl
Update shell completion for machinectl
2015-08-16 19:58:49 +02:00
Seth Jennings
4f8f4c310c shell-completion: use list-images rather than list
"machinectl list" only lists running machines while many of the MACHINES
commands use names of images; both running and non-running.

List machines from both "list" and "list-images" and use sort -u to
avoid duplicates.
2015-08-16 11:20:21 -05:00
Seth Jennings
6eb8bec62d shell-completion: update machinectl bash completion
Many new subcommands have been added since the bash completion was last
updated.  Bring it up to speed.
2015-08-16 11:19:36 -05:00
Lennart Poettering
9c75b2538a Merge pull request #947 from evverx/bash-completion
Update bash-completion: generate all unit types
2015-08-16 17:04:57 +02:00
Evgeny Vereshchagin
adb0c25eb6 bash-completion: generate unit type list from systemctl -t help option 2015-08-16 14:53:21 +00:00
Nicolas Cornu
cade10ccef zsh completion: update busctl 2015-08-15 13:58:05 +02:00
Eric Cook
fb9d85b71a zsh-completion: _loginctl/_systemd/_systemd-inhibit improvements
_loginctl: respects the verbose style. which allows a user to get
the pre d5df0d950f behavior of not showing a description for sessions
and users, by default they aren't shown.

zstyle ':completion:*' verbose true
or
zstyle ':completion:*:loginctl*:*' verbose true # or similar
Will show the descriptions.

zstyle ':completion:*' verbose true
and
zstyle ':completion:*:loginctl*:*' verbose false # or similar
Won't show descriptions for loginctl only

_systemd: complete pids for systemd-notify's --pid option.
display a message of the expected argument for other options.

_systemd-inhibit: complete block & delay for --mode
display a message of the expected argument for --who/--why
2015-06-22 18:07:32 -04:00
Eric Cook
38cf1e292b zsh-completion: _systemd-nspawn - add more argument completion
filenames will be completed for --image/-i/--bind/--bind-ro/--tmpfs
network interfaces for --network-(interface|macvlan|ipvlan|bridge)
users for --user/-u, yes & no for --register, x86 * x86-64 for
--personality

display a message of the expected argument for --machine/-M/--uuid
--slice/-S/--port/-p/--selinux-*/-Z/-L/--setenv

Allow completing commands(and their options) of the host system for COMMAND
2015-06-21 21:59:26 -04:00
Eric Cook
b0fe29ff9e zsh-completion: _loginctl - general bug fixes
1) the iterator `fun' has an local scope. after running the completer,
it will no longer be defined.

2) use _describe instead of calling compadd. Using compadd without
calling _description or something similar before, restricts the
user's ability to customize what is presented to them.
zstyle ':completion:*' format 'Completing %d'
  - now displays an header showing what is being completed.
zstyle ':completion::complete:loginctl-*::users' users user1 user2
  - allows the user to manually specify which users is offered
zstyle :completion::complete:loginctl-kill-user:\* \
ignored-patterns '(100<0-4>|user1)'
  - selectively ignore some users when completing loginctl kill-user
    <tab>
Sessions, UIDs now have descriptions when selecting them.

3) removed the call to _loginctl_all_seats in _loginctl_attach(), since
_loginctl_seats calls it a second time, right before adding matches.
There isn't a noticeable difference doing this.
2015-06-17 07:41:24 -04:00
Daniel Hahler
a0ab162a09 zsh-completion: optimize _filter_units_by_property
Optimize _filter_units_by_property by calling `systemctl` only once with
a list of units, and not once per unit.

I could not reproduce the "Unknown unit" error mentioned in a FIXME,
which might have made this necessary previously.
2015-06-06 12:54:41 +02:00
Daniel Mack
d4cb023490 Merge pull request #5 from systemd-mailing-devs/1432910411-14517-1-git-send-email-llua@gmx.com
zsh-completion: a more style/tag aware _systemctl
2015-06-02 17:57:43 +02:00
Daniel Mack
ad2274289b Merge pull request #4 from systemd-mailing-devs/1431989131-25145-1-git-send-email-llua@gmx.com
zsh-completion: fix completion of --user services
2015-06-02 17:43:29 +02:00
Daniel Mack
c521a430fd zsh-completion: fix typo in _bootctl
The command is 'install', not 'instal'. Fix that typo.
2015-06-01 12:07:19 +02:00
Ronny Chevalier
da090dfd0b zsh-completion: update bootctl 2015-05-30 11:19:35 +02:00
Eric Cook
d34b7c117b zsh-completion: a more style/tag aware _systemctl
using _wanted instead of calling compadd directly. this allows the user to customize
possible matches.

An example being, grouping units by type:
autoload -Uz compinit; compinit
zstyle ':completion:*' menu select
zstyle ':completion:*' group-name ''
zstyle ':completion:*' format 'Completing %d'
zstyle -e ':completion:*:*:systemctl-(((re|)en|dis)able|(*re|)start|reload*):*' \
tag-order 'local type; for type in service template target socket;
    reply+=( systemd-units:-${type}:${type} ); reply=( "$reply systemd-units:-misc:misc" )'
zstyle ':completion:*:systemd-units-template' ignored-patterns '^*@'
zstyle ':completion:*:systemd-units-target' ignored-patterns '^*.target'
zstyle ':completion:*:systemd-units-socket' ignored-patterns '^*.socket'
zstyle ':completion:*:systemd-units-service' ignored-patterns '^*.service'
zstyle ':completion:*:systemd-units-misc' ignored-patterns '*(@|.(service|socket|target))'

also, <poke> http://lists.freedesktop.org/archives/systemd-devel/2015-May/032012.html
2015-05-29 17:04:09 +02:00
Eric Cook
68c4f6d406 zsh-completion: fix completion of --user services
By the time __systemctl is called, --user/--system are shifted out of
`words' by _arguments. This patch queries the array sooner.

In the case that both --user and --system are on the line when compsys runs,
_sys_service_mgr is set to the latter. Which is seemingly how systemctl behaves.

If neither are on the line, --system is set; for system services to be completed.
2015-05-19 01:01:40 +02:00
Eric Cook
bf8864c2c0 zsh-completion: make the arrays _sys_active_units, _sys_startable_units and _sys_restartable_units local to the completer. 2015-05-18 05:22:09 -04:00
Eric Cook
2103d29d89 zsh-completion: removing more pointless forks
I seem to have forgot about _systemctl_active_units().
2015-05-18 05:22:09 -04:00
Eric Cook
463985a9f4 zsh-completion: less forking in _systemctl_failed_units() and make the array `_sys_failed_units' local to the completer. 2015-05-18 05:22:08 -04:00
Eric Cook
e4e868f3ae zsh-completion: less forking in _systemctl_get_template_names() 2015-05-18 05:22:08 -04:00
Eric Cook
fb869ca1d2 zsh-completion: actually complete template names for subcommands enable, reenable and disable.
compadd's -a option treats non-option arguments as arrays. So
$(_systemctl_get_template_names) expands to some words that aren't
legal array names. Even if there were, they would be empty; thus adding
nothing.

deduplicated a few functions too.
2015-05-18 05:22:08 -04:00
Eric Cook
67afa93148 zsh-completion: actually run _filter_units_by_property when creating the arrays _sys_(re|)startable_units 2015-05-18 05:22:08 -04:00
Zbigniew Jędrzejewski-Szmek
903e7c37ca Use "new" --job-mode= option in more places
--irreversible/--ignore-dependencies/--fail are deprececated since 4dc5b821ae.

Also add shell completions for --jobs-mode.
2015-05-18 01:08:09 -04:00
Lukas Rusak
6b85708cfd zsh-completion: add missing completions for systemd-nspawn 2015-05-16 11:54:28 -04:00
Lukas Rusak
b93f15cd05 zsh-completion: update -M completion for systemd-analyze 2015-05-16 11:54:28 -04:00
Lukas Rusak
b3b9282d0c zsh-completion: add missing completions for machinectl
Appologies, I'm still getting used to this mailing list thing and using git send-email
2015-05-16 11:54:28 -04:00
Zbigniew Jędrzejewski-Szmek
7b742b3130 shell-completion: systemctl switch-root verb
The completion is rudimentary (all files). I think this is OK since
this is used so rarely. But not having it proposed at all is annoying.
2015-04-08 11:28:45 -04:00
Ronny Chevalier
d67b1f525f zsh-completion: update hostnamectl 2015-04-08 02:42:50 +02:00
Ronny Chevalier
b178d279d9 zsh-completion: add missing -M completion for journalctl 2015-04-08 02:42:50 +02:00
Ronny Chevalier
8470025541 zsh-completion: update loginctl 2015-04-08 02:42:50 +02:00
Jan Janssen
5bdf22430e logind,systemctl: add reboot to EFI firmware support 2015-04-07 18:51:45 +02:00
Carlos Morata Castillo
b4f91f2ba3 Updates in bash autocompletions
Hi,

I did ./check-undocumented.sh -b (my script just submitted) and checked
the results.

Cheers.
2015-01-29 00:44:30 -05:00
Torstein Husebø
cc98b3025e treewide: fix multiple typos 2015-01-26 10:39:47 -05:00
Wieland Hoffmann
e37b56c735 zsh-completion: Do not interpret escape sequences in _filter_units_by_property
This makes all functions that rely on _filter_units_by_property() (like
_systemctl_{stop,kill,try_restart}) work with unit names that contain backslash
escaped sequences (like automount units with spaces that are escaped to
"\x20").
2015-01-21 10:59:40 +01:00
Moez Bouhlel
d31f44e281 fix zsh completion typo
json-see => json-sse
2015-01-15 00:57:45 +01:00
Ronny Chevalier
ee14023fd5 zsh-completion: add missing completions for systemd-tmpfiles 2015-01-12 22:19:34 +01:00
Ronny Chevalier
a80cea6861 zsh-completion: add missing completions for systemd-run 2015-01-12 22:13:33 +01:00
Ronny Chevalier
26bd71f06c zsh-completion: add missing completions for systemd-analyze 2015-01-12 22:13:18 +01:00
Ronny Chevalier
c285cb5c55 zsh-completion: add missing -M completion for timedatectl 2015-01-12 21:31:45 +01:00
Ronny Chevalier
720e0be0f0 zsh-completion: add missing completions for coredumpctl 2015-01-12 21:26:27 +01:00
Ronny Chevalier
e4e5a85f34 shell-completion: add missing output modes
https://bugs.freedesktop.org/show_bug.cgi?id=88216
2015-01-09 13:53:23 +01:00
Carlos Morata Castillo
8c5463585d bash-completion: systemd-nspawn update
*Autocompletion for dirs, doesn't leave until you press space.
*Added tmpfs, volatile and network-macvlan options.

I tried with the SELinux options with seinfo(setools-console), but too
messy to get it right. Even Daniel Walsh haven't done it yet. :)
2015-01-08 16:33:59 -05:00
Lennart Poettering
e275f5e204 shell-completion: add full support for completing busctl command lines, with services, objects, interfaces, members, and signatures 2014-12-23 22:44:32 +01:00
Zbigniew Jędrzejewski-Szmek
820aced6f6 zsh-completion: remove duplicate function
https://bugs.archlinux.org/task/43069
2014-12-10 17:34:56 -05:00