{"id":16603410,"url":"https://github.com/rnestler/reboot-arch-btw","last_synced_at":"2025-04-02T08:07:57.844Z","repository":{"id":8853557,"uuid":"59953235","full_name":"rnestler/reboot-arch-btw","owner":"rnestler","description":"Checks if your ArchLinux needs a reboot due to a kernel update","archived":false,"fork":false,"pushed_at":"2024-10-01T09:17:20.000Z","size":449,"stargazers_count":25,"open_issues_count":5,"forks_count":4,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-19T21:11:01.235Z","etag":null,"topics":["arch-linux","archlinux","hacktoberfest","reboot-arch-btw","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rnestler.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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":"2016-05-29T16:33:26.000Z","updated_at":"2024-10-01T09:17:21.000Z","dependencies_parsed_at":"2023-02-17T08:35:35.730Z","dependency_job_id":"1dd02888-30b2-404d-8da7-07779d6354b7","html_url":"https://github.com/rnestler/reboot-arch-btw","commit_stats":{"total_commits":305,"total_committers":7,"mean_commits":43.57142857142857,"dds":0.1573770491803279,"last_synced_commit":"11c2aea2f724fbe53b52e5b2519fe0983b905dc9"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rnestler%2Freboot-arch-btw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rnestler%2Freboot-arch-btw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rnestler%2Freboot-arch-btw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rnestler%2Freboot-arch-btw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rnestler","download_url":"https://codeload.github.com/rnestler/reboot-arch-btw/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246777832,"owners_count":20832032,"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":["arch-linux","archlinux","hacktoberfest","reboot-arch-btw","rust"],"created_at":"2024-10-12T00:50:14.671Z","updated_at":"2025-04-02T08:07:57.826Z","avatar_url":"https://github.com/rnestler.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# Reboot Arch BTW\n\n[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/rnestler/reboot-arch-btw/ci.yml?branch=master)](https://github.com/rnestler/reboot-arch-btw/actions)\n[![Crates.io Version](https://img.shields.io/crates/v/reboot-arch-btw.svg)](https://crates.io/crates/reboot-arch-btw)\n[![Crates.io Downloads](https://img.shields.io/crates/d/reboot-arch-btw.svg)](https://crates.io/crates/reboot-arch-btw)\n[![AUR version](https://img.shields.io/aur/version/reboot-arch-btw?label=AUR)](https://aur.archlinux.org/packages/reboot-arch-btw)\n\nThis is a small utility which shows the installed and running Linux kernel on\n[ArchLinux](https://www.archlinux.org). It is useful if one didn't notice that\nthe kernel got updated and suddenly your USB drive won't mount because the\nneeded kernel module can't get loaded.\n\nIt can also detect if critical packages like systemd got updated which may also\nmake a reboot necessary.\n\nTo get the version of the installed kernel it uses libalpm (shipped with\npacman) to query the local pacman database. To get the version of the running\nkernel it uses `uname -r`.\n\n## Install\n\nYou may just install it from the AUR:\n * https://aur.archlinux.org/packages/reboot-arch-btw for the latest release\n * https://aur.archlinux.org/packages/reboot-arch-btw-git for the latest master\n\nAlternatively one can install it with cargo:\n```\ncargo install reboot-arch-btw\n```\n\n## Build\n\nThis project requires the latest stable Rust version but may also be compatible\nwith older Rust versions. Also you need to have dbus installed.\n\n```Shell\nsudo pacman -S dbus\ncargo build\n```\n\n## Usage\n\n```Shell\n$ reboot-arch-btw\nKernel\n installed: 5.19.13.arch1.1 (since 4 minutes ago)\n running:   5.19.12.arch1.1\nsystemd updated 4 minutes ago\nReboot arch btw\n```\n\nIt will also show a [desktop\nnotification](https://wiki.archlinux.org/title/Desktop_notifications)\nindicating that you probably want to reboot your system.\n\nIf no restart is needed, `reboot-arch-btw` won't output anything by default.\nUse `--verbose` to always get some output.\n\nOne can use `--reboot-packages` or `--reboot-packages` to set the list of\npackages which should also trigger a notification if they are updated.\n\n```\n$ reboot-arch-btw --help\nCheck if a reboot is needed due to an updated kernel or other system packages.\n\nUsage: reboot-arch-btw [OPTIONS]\n\nOptions:\n      --disable-notification\n          Disable desktop notification\n\n      --notification-timeout \u003cNOTIFICATION_TIMEOUT\u003e\n          Timeout for the desktop notification in milliseconds.\n\n          * \"default\" will leave the timeout to be set by the server.\n\n          * \"never\" or \"0\" will cause the notification never to expire.\n\n          * Any other number will be interpreted as the timeout in milliseconds.\n\n          [default: default]\n\n      --reboot-packages \u003cREBOOT_PACKAGES\u003e\n          Comma separated list of packages were we should reboot after an upgrade\n\n          [default: systemd,linux-firmware,amd-ucode,intel-ucode]\n\n      --session-restart-packages \u003cSESSION_RESTART_PACKAGES\u003e\n          Comma separated list of packages were we should restart our session after an upgrade\n\n          [default: xorg-server,xorg-xwayland]\n\n  -v, --verbose\n          Print kernel version info and show updated packages\n\n  -h, --help\n          Print help (see a summary with '-h')\n\n  -V, --version\n          Print version\n```\n\n### [Pacman Hook](https://wiki.archlinux.org/title/Pacman#Hooks)\n\nYou can configure `pacman` to run `reboot-arch-btw` after every upgrade to\ncheck immediatly if you should reboot. For that create\n`/etc/pacman.d/hooks/99-reboot-arch-btw.hook` with the following content:\n\n```\n[Trigger]\nOperation = Upgrade\nType = Package\nTarget = *\n\n[Action]\nDescription = Check whether a reboot is required\nDepends = reboot-arch-btw\nWhen = PostTransaction\nExec = /usr/bin/sudo -u $USER DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$UID/bus /usr/bin/reboot-arch-btw\n```\n\nNote: You need to replace `$USER` and `$UID` with your actual username and user\nID.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frnestler%2Freboot-arch-btw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frnestler%2Freboot-arch-btw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frnestler%2Freboot-arch-btw/lists"}