fix: allow calls for systemd graphical target to fail #34
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
std::process::Command
work, and made that function swallow errors rather than return them or panic (because we want to keep systemd optional)std::process::Command
, because it's allegedly faster to skip inheriting the parent's stdin (and it's not our intention to allow this inheritance anyway).spawn()
to.status()
so that we can at least find out ifsystemctl
accepted our calls (mostly for diagnostic purposes)--no-block
tosystemctl
when starting/stopping the graphical target, because we care mostly that we called into systemd successfully, not what happens inside systemd after thatin all testing below, the session and compositor continue to launch as normal:
systemctl --user status cosmic-session.target
shows it is activesystemctl-foo
as the hardcoded command, to confirm that that theErr
branch results in the expected logs, and thatsystemctl --user status cosmic-session.target
shows it is inactivecosmic-session-foo.target
as the hardcoded target, to confirm that that the non-zero exit status code branch results in the expected logs, and thatsystemctl --user status cosmic-session.target
shows it is inactive