Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/murkl/arch-os-manager
Streamlining the system, package management and updates for improved usability in Arch OS
https://github.com/murkl/arch-os-manager
arch-os arch-update archlinux bash gum intuitive kiss kitty pacman paru shellcheck system-manager tui updater-script
Last synced: about 1 month ago
JSON representation
Streamlining the system, package management and updates for improved usability in Arch OS
- Host: GitHub
- URL: https://github.com/murkl/arch-os-manager
- Owner: murkl
- License: apache-2.0
- Created: 2024-02-19T15:27:15.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-09-17T16:57:55.000Z (3 months ago)
- Last Synced: 2024-09-17T21:10:45.174Z (3 months ago)
- Topics: arch-os, arch-update, archlinux, bash, gum, intuitive, kiss, kitty, pacman, paru, shellcheck, system-manager, tui, updater-script
- Language: Shell
- Homepage: https://github.com/murkl/arch-os
- Size: 1.15 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: docs/README.md
- License: LICENSE
Awesome Lists containing this project
README
Arch OS Manager
## Install from AUR
1. Install Package **[ ➜ AUR/arch-os-manager](https://aur.archlinux.org/packages/arch-os-manager)**
2. Run Arch OS Manager:
```
arch-os
```**Note:** Add parameter `-k` to start with built-in kitty in standalone mode
## Install from GitHub
1. Clone GitHub Repo:
```
git clone https://github.com/murkl/arch-os-manager.git && cd arch-os-manager
```2. Install Dependencies:
```
./arch-os --install
```3. Run Arch OS Manager:
```
./arch-os
```**Note:** Add parameter `-k` to start with built-in kitty in standalone mode
## Features
- Check & list updates in _checkupdates_ format
- System health info
- Startup notify on available updates
- Notify & show latest Arch Linux news
- Notice on orphaned packages & pacdiff files
- Search & manage packages
- Show system info, packages & logs
- Upgrade system packages
- Remove orphaned packages
- Clear Package cache
- Reset Pacman keyring
- Built-in system log blacklist
- Built-in settings editor
- Standalone mode with built-in kittyInstall these **optional** dependencies to equip Arch OS Manager with additional features:
- `paru`: Add support for manage AUR packages
- `flatpak`: Add support for manage Flatpak packages
- `reflector`: Add support for refresh Pacman mirrorlist
- `downgrade`: Add support for downgrade packages
- `meld`: Add support for merge pacdiff configurations
- `xdg-utils`: Add support for open news in browser
- `gnome-shell-extensions`: Add support for GNOME Extensions**Note:** _see [Install Dependencies](#install-dependencies-optional) for more information_
## Usage
The manager can be opened regularly with `arch-os` or in standalone mode with `arch-os --kitty`.
```
arch-os [--kitty | -k] [action]
```**Note:** If no parameter is specified, the main menu is opened.
### App Actions
```
help ➜ Open help page
version ➜ Print version info
settings ➜ Edit settings in built-in ediitor
```### System Actions
```
check ➜ Print package updates (checkupdates)
notify ➜ Notify on new package updates (autostart)
search ➜ Search & manage packages (pacman, aur)
info ➜ Show system info (logs, services, health)
upgrade ➜ System upgrade (news, health, pacman, aur, flatpak)
orphans ➜ Remove orphaned packages (pacman, aur, flatpak)
merge ➜ Merge updated configurations (pacdiff, meld)
refresh ➜ Refresh & edit pacman mirrorlist (reflector)
downgrade ➜ Downgrade packages (pacman)
cache ➜ Clear package cache (pacman, aur)
reset ➜ Reset pacman keyring & upgrade (pacman)
```### Install Dependencies _(optional)_
Use parameter `--install` to install and preconfigure **all required packages** from the Arch OS Manager.
#### Pacman Packages
```
git base-devel pacman-contrib reflector flatpak gum kitty libnotify fzf xdg-utils meld
```#### AUR Packages
These packages are built and installed manually from the AUR-Git repository using `makepkg`:
- paru (see `AUR_MANAGER_REPO` property for more details)
- downgradeParu is preconfigured in `/etc/paru.conf`. Old configurations are copied to `/etc/paru.conf.20240919170446`, for example (before editing).
## Settings
Edit the settings with the built-in editor in Arch OS Manager or edit the config file manually.
```
ARCH_UPGRADE_CONFIRM=true # Enable confirm upgrade system packages (disable: false)
ARCH_DOWNLOAD_TIMEOUT=false # Disable pacman/paru download timeout (enable: true)
AUR_MANAGER_REPO=paru # Set AUR manager package for --install (paru, paru-bin, paru-git)
AUR_SUPPORT=true # Enable AUR support (disable: false)
AUR_REVIEW=false # Disable AUR review (enable: true)
FLATPAK_SUPPORT=true # Enable flatpak support (disable: false)
FLATPAK_UPGRADE_CONFIRM=false # Disable confirm flatpak upgrade (enable: true)
ORPHANS_CONFIRM=false # Disable confirm remove orphans (enable: true)
AUTOSTART_NOTIFY=true # Enable update notify on system boot (disable: false)
AUTOSTART_DELAY=30 # Delay update check after boot in seconds (min: 10)
NEWS_QUANTITY=3 # Number of news to shown (disable: 0)
SHOW_SYSTEM_LOG=true # Show system log in info (disable: false)
SHOW_SERVICE_LIST=true # Show running services in info (disable: false)
SHOW_UNKNOWN_PKG_LIST=false # Show unknown package counter instead of name list (enable: true)
```### Configurations
- Arch OS Manager config: `~/.arch-os/config/settings.conf`
- Built-in kitty config: `~/.arch-os/config/kitty.conf`
- System log blacklist: `~/.arch-os/config/blacklist.conf`## Integrate GNOME Extension
1. Install GNOME Extension **[➜ archlinux-updates-indicator](https://extensions.gnome.org/extension/1010/)**
2. Set `Check command`:
```
dconf write /org/gnome/shell/extensions/arch-update/check-cmd "'/usr/bin/arch-os check'"
```3. Set `Update command`:
```
dconf write /org/gnome/shell/extensions/arch-update/update-cmd "'arch-os --kitty upgrade'"
```4. Set `Package Manager` (optional):
```
dconf write /org/gnome/shell/extensions/arch-update/package-manager "'arch-os --kitty'"
```## Screenshots
This screenshots may outdated.
## Credits
- https://archlinux.org
- https://github.com/RaphaelRochet/arch-update
- https://github.com/Morganamilo/paru
- https://github.com/kovidgoyal/kitty
- https://github.com/charmbracelet/gum
- https://github.com/archlinux-downgrade/downgrade
- https://meldmerge.org