{"id":13405896,"url":"https://github.com/joehillen/sysz","last_synced_at":"2025-05-15T19:04:03.481Z","repository":{"id":41567903,"uuid":"343520006","full_name":"joehillen/sysz","owner":"joehillen","description":"An fzf  terminal UI for systemctl","archived":false,"fork":false,"pushed_at":"2024-04-22T10:35:27.000Z","size":277,"stargazers_count":1675,"open_issues_count":3,"forks_count":27,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-05-15T19:03:46.156Z","etag":null,"topics":["bash","bash-script","cli","fzf","systemctl","systemd","tui"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joehillen.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-03-01T18:39:58.000Z","updated_at":"2025-05-12T16:36:33.000Z","dependencies_parsed_at":"2024-01-13T21:43:08.509Z","dependency_job_id":"51eadce1-d60c-4825-bf54-0c470d1c2821","html_url":"https://github.com/joehillen/sysz","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joehillen%2Fsysz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joehillen%2Fsysz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joehillen%2Fsysz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joehillen%2Fsysz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joehillen","download_url":"https://codeload.github.com/joehillen/sysz/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254404356,"owners_count":22065641,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","bash-script","cli","fzf","systemctl","systemd","tui"],"created_at":"2024-07-30T19:02:15.243Z","updated_at":"2025-05-15T19:04:03.434Z","avatar_url":"https://github.com/joehillen.png","language":"Shell","funding_links":[],"categories":["Shell","CLI/TUI Apps","\u003ca name=\"system\"\u003e\u003c/a\u003eSystem tools","Table of Contents"],"sub_categories":["Other"],"readme":"# [sysz](https://github.com/joehillen/sysz)\n\nA [fzf](https://github.com/junegunn/fzf) terminal UI for systemctl\n\n\u003ca href=\"https://console.dev\" title=\"Visit Console - the best tools for developers\"\u003e\u003cimg src=\"https://console.dev/img/badges/1.0/svg/console-badge-logo-dark.svg\" alt=\"Console - Developer Tool of the Week\" /\u003e\u003c/a\u003e\n\n# Demo\n\n[![asciicast](https://asciinema.org/a/BLsJz73uF7DdQj7FVGqLPhqCa.svg)](https://asciinema.org/a/BLsJz73uF7DdQj7FVGqLPhqCa)\n\n# Features\n\nVERSION: 1.4.3\n\n- See and filter both system and user units simultaneously.\n- Supports all unit types.\n- Units ordered by service, timer, socket, and the rest.\n- Runs `sudo` automatically and only if necessary.\n- Filter units by state using `ctrl-s` or the `--state` option.\n- Run `daemon-reload` with `ctrl-r`.\n- Has short versions of systemctl commands to reduce typing.\n- Runs status after other commands (start, stop, restart, etc).\n- Select multiple units, states, and commands using `TAB`.\n- Only prompts commands based on current state\n  (e.g. show \"start\" only if the unit is inactive).\n\n# Requirements\n\n- [fzf](https://github.com/junegunn/fzf) \u003e= [0.27.1](https://github.com/junegunn/fzf/blob/master/CHANGELOG.md#0244)\n- bash \u003e 4.3 (released 2009)\n- awk\n\n# Installation\n\n## Arch Linux\n\n```\nparu -S sysz\n```\n\n## NixOS\n\n```\nnix-env -iA nixos.sysz\n```\n\n## Using Nix\n\n```\nnix-env -iA nixpkgs.sysz\n```\n\n## Using [`bin`](https://github.com/marcosnils/bin)\n\n```\nbin install https://github.com/joehillen/sysz\n```\n\n## Direct Download\n\n```sh\nwget -O ~/.bin/sysz https://github.com/joehillen/sysz/releases/latest/download/sysz\nchmod +x ~/.bin/sysz\n```\n\n## From Source\n\n```sh\ngit clone https://github.com/joehillen/sysz.git\ncd sysz\nsudo make install # /usr/local/bin/sysz\n```\n\n# Usage\n\n```text\nA utility for using systemctl interactively via fzf.\n\nUsage: sysz [OPTS...] [CMD] [-- ARGS...]\n\nsudo is invoked automatically, if necessary.\n\nIf only one unit is chosen, available commands will be presented\nbased on the state of the unit (e.g. \"start\" only shows if unit is \"active\").\n\nOPTS:\n  -u, --user               Only show --user units\n  --sys, --system          Only show --system units\n  -s STATE, --state STATE  Only show units in STATE (repeatable)\n  -V, --verbose            Print the systemctl command\n  -v, --version            Print the version\n  -h, --help               Print this message\n\n  If no options are given, both system and user units are shown.\n\nCMD:\n  start                  systemctl start \u003cunit\u003e\n  stop                   systemctl stop \u003cunit\u003e\n  r, restart             systemctl restart \u003cunit\u003e\n  s, stat, status        systemctl status \u003cunit\u003e\n  ed, edit               systemctl edit \u003cunit\u003e\n  reload                 systemctl reload \u003cunit\u003e\n  en, enable             systemctl enable \u003cunit\u003e\n  d, dis, disable        systemctl disable \u003cunit\u003e\n  c, cat                 systemctl cat \u003cunit\u003e\n\n  If no command is given, one or more can be chosen interactively.\n\nARGS are passed to the systemctl command for each selected unit.\n\nKeybindings:\n  TAB           Toggle selection.\n  ctrl-v        'cat' the unit in the preview window.\n  ctrl-s        Select states to match. Selection is reset.\n  ctrl-r        Run daemon-reload. Selection is reset.\n  ctrl-p        History previous.\n  ctrl-n        History next.\n  ?             Show keybindings.\n\nHistory:\n  sysz is stored in $XDG_CACHE_HOME/sysz/history\n  This can be changed with the environment variable: SYSZ_HISTORY\n\nSome units are colored based on state:\n  green       active\n  red         failed\n  yellow      not-found\n\nExamples:\n  sysz -u                      User units\n  sysz --sys -s active          Active system units\n  sysz --user --state failed   Failed user units\n\nExamples with commands:\n  sysz start                  Start a unit\n  sysz --sys s                Get the status of system units\n  sysz --user edit            Edit user units\n  sysz s -- -n100             Show status with 100 log lines\n  sysz --sys -s active stop    Stop an active system unit\n  sysz -u --state failed r    Restart failed user units\n```\n\n# Acknowledgements\n\nInspired by [fuzzy-sys](https://github.com/NullSense/fuzzy-sys) by [NullSense](https://github.com/NullSense/)\n\nThank you for [ShellCheck](https://github.com/koalaman/shellcheck) without which this would be a buggy mess.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoehillen%2Fsysz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoehillen%2Fsysz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoehillen%2Fsysz/lists"}