111 lines
2.7 KiB
Markdown
111 lines
2.7 KiB
Markdown
<p align="center">
|
|
<img width="200" src="res/cachy-auto-update.svg" alt="cachy-auto-update">
|
|
</p>
|
|
|
|
<h1 align="center">cachy-auto-update</h1>
|
|
|
|
<h3 align="center">Unattended background updates for CachyOS.</h3>
|
|
|
|
<p align="center">
|
|
pacman, AUR, Flatpak and AppImages. In the background, with no password prompt.
|
|
</p>
|
|
|
|
<h5 align="center">
|
|
<a href="#install">Install</a> |
|
|
<a href="#how-to-use">How to use</a> |
|
|
<a href="https://github.com/LoonixTools/cachy-auto-update/issues">Report a bug</a>
|
|
</h5>
|
|
|
|
<p align="center">
|
|
<a href="https://buymeacoffee.com/felitendo"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" height="48"></a>
|
|
</p>
|
|
|
|
## Install
|
|
|
|
```bash
|
|
paru -S cachy-auto-update
|
|
sudo cachy-auto-update enable
|
|
```
|
|
|
|
## How to use
|
|
|
|
```bash
|
|
sudo cachy-auto-update
|
|
```
|
|
|
|
<p align="center">
|
|
<img src="res/screenshots/menu.png" alt="The cachy-auto-update menu in Konsole: automatic updates and notifications on" width="620">
|
|
</p>
|
|
|
|
Press **1** to turn automatic updates on or off. **6** has all the settings.
|
|
|
|
## When does it update?
|
|
|
|
| | |
|
|
|---|---|
|
|
| Battery below 30 % | ⏸️ Waits (on power it runs) |
|
|
| A game is running | ⏸️ Waits |
|
|
| pacman, yay or paru is running | ⏸️ Waits |
|
|
| Shutdown or suspend during an update | 🚫 Blocked until it is done |
|
|
| Restart after an update | ❌ Never on its own, you get a notification |
|
|
|
|
## More
|
|
|
|
<details>
|
|
<summary>What it updates</summary>
|
|
|
|
| | |
|
|
|---|---|
|
|
| Packages | `pacman -Syu` |
|
|
| AUR | `paru` or `yay` |
|
|
| Flatpak | system and user installs |
|
|
| AppImages | through [Gear Lever](https://github.com/mijorus/gearlever) |
|
|
|
|
</details>
|
|
|
|
<details>
|
|
<summary>Safety</summary>
|
|
|
|
- A progress bar shows the step and the package.
|
|
- On Btrfs with snapper (the CachyOS default) every update gets a snapshot before and after.
|
|
- A lock file left by a power cut is removed on the next run.
|
|
- Package replacements are handled on their own. File conflicts are never overwritten.
|
|
- A signature error refreshes the keyring once and tries again.
|
|
|
|
</details>
|
|
|
|
<details>
|
|
<summary>Logs</summary>
|
|
|
|
```bash
|
|
cachy-auto-update log # last run
|
|
cachy-auto-update log -a # all runs
|
|
journalctl -u cachy-auto-update
|
|
```
|
|
|
|
</details>
|
|
|
|
<details>
|
|
<summary>cachy-update</summary>
|
|
|
|
[cachy-update](https://github.com/CachyOS/cachy-update) tells you about updates, you install them.
|
|
This installs them for you. Both work side by side, and `enable` offers to silence
|
|
cachy-update's notification.
|
|
|
|
</details>
|
|
|
|
<details>
|
|
<summary>Build from source</summary>
|
|
|
|
```bash
|
|
make && sudo make install
|
|
sudo systemd-sysusers && sudo systemd-tmpfiles --create
|
|
sudo cachy-auto-update enable
|
|
```
|
|
|
|
Optional: `pacman-contrib`, an AUR helper, `flatpak`, Gear Lever, `libnotify`, `python-gobject`.
|
|
|
|
</details>
|
|
|
|
GPL-3.0-or-later.
|