Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 74 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,87 @@
<div align="center">
<h1>CachyOS Welcome</h1>
<h1>CachyOS Hello</h1>
<p>
<strong>Welcome screen for CachyOS written in Rust</strong>
</p>
<p>

![CachyOS-Welcome v.0.16.4](https://github.com/user-attachments/assets/b555d6a5-9550-4869-9a41-734a09d806bf)


![CachyOS-Hello](assets/screenshot.png)

[![Dependency Status](https://deps.rs/repo/github/cachyos/cachyos-welcome/status.svg)](https://deps.rs/repo/github/cachyos/cachyos-welcome)
<br />
[![CI](https://github.com/cachyos/cachyos-welcome/actions/workflows/rust.yml/badge.svg)](https://github.com/cachyos/cachyos-welcome/actions/workflows/rust.yml)

</p>
</div>

## Overview

CachyOS Hello is a GTK3 application that serves as the main entry point for new CachyOS users. It provides a graphical interface for system setup, maintenance, and configuration — including service tweaks, one-click fixes, encrypted DNS configuration, quick access to CachyOS tools (Package Installer, Kernel Manager), and a guided installer path on live ISO. Supports 32 languages with runtime locale switching. Also ships a full CLI for scripting and automation.

## CLI

```
cachyos-hello <COMMAND>
```

### `fix <ACTION>`

| Action | Description |
|---|---|
| `update-system` | Update all system packages |
| `reinstall-packages` | Reinstall all native packages |
| `reset-keyrings` | Reset and repopulate pacman keyrings |
| `remove-lock` | Remove pacman database lock file |
| `clear-cache` | Clear package cache |
| `remove-orphans` | Remove orphan packages |
| `rank-mirrors` | Rank mirrors by speed |
| `install-gaming` | Install gaming meta-packages |
| `install-winboat` | Install Winboat |
| `show-kwin-debug` | Open KWin Wayland debug console |

### `tweak <ACTION>`

```
cachyos-hello tweak enable <NAME>
cachyos-hello tweak disable <NAME>
cachyos-hello tweak list
```

Available tweaks: `psd`, `oomd`, `bpftune`, `bluetooth`, `ananicy`, `cachy-update`

### `dns <ACTION>`

```
# Use a preconfigured provider
cachyos-hello dns set --connection <NAME> --server <SERVER> [--dot] [--doh]

# Use custom DNS addresses
cachyos-hello dns set-custom --connection <NAME> [--ipv4 <ADDRS>] [--ipv6 <ADDRS>] [--dot] [--doh-url <URL>]

# Reset to automatic
cachyos-hello dns reset --connection <NAME>

# List available connections / providers / test latency
cachyos-hello dns list-connections
cachyos-hello dns list-servers
cachyos-hello dns test-latency
```

---

## Building

**Dependencies:** gtk+-3.0, glib-2.0, gio-2.0, Rust toolchain, Meson

```sh
meson setup build
meson compile -C build
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

building&testing can be done without calling meson, but required for installer

meson install -C build # optional
meson test -C build # optional
```

---

## License

GPL-3.0 — see [LICENSE](LICENSE) for details.
Binary file added assets/screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading