diff --git a/README.md b/README.md index eeab944..4871699 100644 --- a/README.md +++ b/README.md @@ -1,121 +1,3 @@ # Zephyrus-Linux -English | [Nederlands](README.nl.md) - -My Linux setup for the ASUS ROG Zephyrus G16 GA605WV (2024), written down and scripted. It is how I like Linux, and how I get a fresh install to exactly that state: a checklist window that shows what is already done on your machine and links every item to its guide page. You don't need this exact laptop. Only the pages and script items that talk to its hardware are specific to the G16, everything else works on any machine. - -**Browse the guides: [zephyrus-linux.thectic.nl](https://zephyrus-linux.thectic.nl/)** - - -## Set up a machine like mine - -```bash -curl -LO https://zephyrus-linux.thectic.nl/scripts/quicksetup.py -python3 quicksetup.py -``` - -It opens a window: tick what you want, read the plan, apply it. It shows what is already done on your machine and links every item to its guide. Nothing changes until you have seen the plan and pressed Apply, and every item lists the exact commands it runs and the way back, in the window and in [the reference](https://zephyrus-linux.thectic.nl/docs/setup-script/reference/). Check the SHA-256 on [the script's page](https://zephyrus-linux.thectic.nl/docs/setup-script/) before you run it. Changes are made on CachyOS and other Arch-based systems with GNOME. Elsewhere the window is read-only. - - -## What is in here - -- **Guides** for CachyOS and Bazzite: the settings and software I actually use, and why. Pages about the laptop's own hardware (the ASUS tools, brightness, the Wi-Fi card, the color profiles) are G16-specific. The GNOME desktop, security, applications, virtualization and gaming pages work on any machine. -- **A setup window** that turns most of that into a checklist with a switch per item and a guide link for each. -- **Dedicated scripts** for the harder fixes (brightness in every GPU mode, Wi-Fi tuning, eduroam), which the setup window runs for you after checking them against the SHA-256 built into it. - - -## About this project - -This is my own setup, not a neutral survey. It is opinionated: my favorite settings and the software I actually use, on the one laptop I own. I wrote it down so I can rebuild the machine quickly, and so others who like the same things get there faster. I'm not a developer, just someone who switched to Linux and ran into a lot of things that didn't work out of the box, and much of this is what I figured out along the way. - -CachyOS (Arch) is my daily driver, mostly because some of what I do wants a bit more direct control over the system than an atomic image gives you. I used to dual-boot it with Bazzite (Fedora Atomic) on the same machine and still keep those guides. The site's [Getting Started](https://zephyrus-linux.thectic.nl/docs/) page explains the choice, and a switcher at the top of every page moves between the two sets of guides. - -I'm still actively testing and experimenting: things may change, break, or turn out to be wrong. Everything here is based on my own experience and should be taken as-is, at your own risk. - -I am not affiliated with, endorsed by, or acting on behalf of ASUS, NVIDIA, Microsoft, CachyOS, Universal Blue, or any other company or project mentioned here. - -![System information overview](src/static/images/system-info.avif) - - -## Building the site locally - -This documentation site is built with [Hugo](https://gohugo.io/) using the [Hextra](https://imfing.github.io/hextra/) theme. The theme is managed as a Hugo module (via Go modules, no git submodules). - -**Prerequisites:** -- [Hugo extended](https://gohugo.io/installation/) v0.160.0 (or greater) -- [Go](https://go.dev/dl/) (required for Hugo modules) -- Git -- VS Code - -On Arch Linux / CachyOS: -```bash -sudo pacman -S hugo go -``` - -**Clone the repository:** -```bash -git clone https://github.com/THectic-NL/Zephyrus-Linux.git -cd Zephyrus-Linux -``` - -Hugo automatically downloads the theme module on first run. - -**Run the development server:** -```bash -cd src -hugo server -``` - -The site is available at `http://localhost:1313/`. Hugo watches for file changes and reloads automatically. - -**Build for production:** -```bash -cd src -hugo --gc --minify -``` - -The output is written to `./src/public/`. On push to `main`, GitHub Actions builds the site and deploys it to Bunny.net (Storage zone + Pull Zone) at [zephyrus-linux.thectic.nl](https://zephyrus-linux.thectic.nl/). - - -## Image assets - -All images in this repository use the [AVIF](https://en.wikipedia.org/wiki/AVIF) format: open, royalty-free, and more efficient than PNG or JPEG at equivalent quality. AVIF is the modern standard for web images. - -To convert PNG screenshots to AVIF, install `avifenc` from the `libavif` package: - -```bash -sudo pacman -S libavif -``` - -Batch convert all PNGs in `src/static/images/` (converts and removes originals): - -```bash -cd src/static/images -for f in *.png; do avifenc -q 80 -s 6 "$f" "${f%.png}.avif" && rm "$f"; done -``` - -- `-q 80`: 80% quality (0-100 scale, 100 = lossless) -- `-s 6`: encoder speed (0 = best compression, 10 = fastest) - - -## Credits & resources - -This project wouldn't exist without the work of these people and communities: - -- **[ASUS Linux community](https://asus-linux.org/)**: The project behind `asusctl` and `rog-control-center`, now maintained under the [Open Gaming Collective](https://github.com/OpenGamingCollective/asusctl). Luke Jones has been a major driving force, and numerous contributors have submitted kernel patches, many of which are now merged into mainline Linux, making modern ASUS ROG laptops genuinely usable on Linux. -- **[WinUtil](https://github.com/ChrisTitusTech/winutil)**: The Windows tool that lists, for every tweak, the exact script that applies it and the one that undoes it, generated from the same file the tool runs. The model for the setup reference. -- **[G-Helper](https://github.com/seerge/g-helper)**: The Windows tool that fetches a per-model zip with ASUS color profiles from ASUS's CDN and offers them as Native, sRGB, DCI-P3 and Display P3. The factory profiles in this repository come from the same kind of package, recovered by reverse engineering it. There is not much to do with them on Linux yet, the [color profiles guide](https://zephyrus-linux.thectic.nl/docs/hardware/color-profiles/) explains why. -- **[CachyOS](https://cachyos.org/)**: An Arch-based distribution with extensive hardware-specific tuning: an improved scheduler (BORE/EEVDF), better power management, dynamic refresh rate support, and built-in drivers for both the AMD iGPU and NVIDIA dGPU, including integrated GPU switching. One of the two distributions these guides cover. -- **[Bazzite / Universal Blue](https://universal-blue.org/)**: The people who make the atomic Fedora images this laptop runs well on, and who have contributed many of the patches that make it perform better. The other distribution these guides cover. -- **[Foxboron/sbctl](https://github.com/Foxboron/sbctl)**: Secure Boot key management tool used to enroll custom keys and sign the kernel and EFI binaries. Essential for keeping Secure Boot enabled with a custom kernel. -- **[sched-ext / scx_lavd](https://github.com/sched-ext/scx)**: The Linux scheduler extensibility framework powering the `scx_lavd` CPU scheduler. Excellent latency and responsiveness for desktop and gaming workloads. -- **[lz42/libinput-config](https://github.com/lz42/libinput-config)**: Kernel-level workaround for GNOME/Wayland's missing scroll speed setting, intercepting libinput events before they reach the compositor. -- **[Yubico/pam-u2f](https://github.com/Yubico/pam-u2f)**: PAM module that lets a FIDO2 hardware key (a YubiKey touch) stand in for the password at sudo, the graphical sudo prompt and the lock screen. -- **[Looking Glass](https://looking-glass.io/)**: Low-latency GPU passthrough display project. Didn't work on this hardware, but the project and documentation are excellent. -- **[Hugo](https://gohugo.io/)**: The static site generator used to build the documentation site. -- **[Hextra](https://imfing.github.io/hextra/)**: The Hugo theme powering the documentation site. - - -## License - -This project is licensed under the [MIT License](LICENSE). +Moved to https://codeberg.org/THectic/Zephyrus-Linux diff --git a/README.nl.md b/README.nl.md index 49efa13..f825880 100644 --- a/README.nl.md +++ b/README.nl.md @@ -1,121 +1,3 @@ # Zephyrus-Linux -Nederlands | [English](README.md) - -Mijn Linux-setup voor de ASUS ROG Zephyrus G16 GA605WV (2024), opgeschreven en gescript. Zo heb ik Linux het liefst, en zo krijg ik een verse installatie weer precies zoals ik hem wil: met een checklist-venster dat laat zien wat er op jouw machine al klaar is en bij elk onderdeel linkt naar de bijbehorende pagina in de handleiding. Je hebt niet precies deze laptop nodig. Alleen de pagina's en onderdelen van het script die de hardware van de laptop aansturen zijn specifiek voor de G16. Al het andere werkt op elke machine. - -**Bekijk de handleidingen: [zephyrus-linux.thectic.nl](https://zephyrus-linux.thectic.nl/nl/)** - - -## Richt een machine in zoals de mijne - -```bash -curl -LO https://zephyrus-linux.thectic.nl/scripts/quicksetup.py -python3 quicksetup.py -``` - -Het script opent een venster: vink aan wat je wilt, lees het plan en pas het toe. Het laat zien wat er op jouw machine al klaar is en linkt elk onderdeel naar de handleiding. Er verandert niets totdat je het plan hebt gezien en op Apply hebt gedrukt, en elk onderdeel toont de exacte opdrachten die het draait en de weg terug, in het venster en in [de referentie](https://zephyrus-linux.thectic.nl/nl/docs/setup-script/reference/). Controleer de SHA-256 op [de pagina van het script](https://zephyrus-linux.thectic.nl/nl/docs/setup-script/) voordat je het draait. Het venster brengt alleen wijzigingen aan op CachyOS en andere Arch-systemen met GNOME. Overal elders is het alleen-lezen. - - -## Wat er in zit - -- **Handleidingen** voor CachyOS en Bazzite: de instellingen en software die ik echt gebruik, en waarom. Pagina's over de hardware van de laptop zelf (de ASUS-tools, helderheid, de Wi-Fi-kaart, de kleurprofielen) zijn specifiek voor de G16. De pagina's over het GNOME-bureaublad, beveiliging, applicaties, virtualisatie en gaming werken op elke machine. -- **Een setup-venster** dat het grootste deel daarvan omzet in een checklist met per onderdeel een schakelaar en een link naar de handleiding. -- **Eigen scripts** voor de lastigere fixes (helderheid in elke GPU-modus, Wi-Fi-tuning, eduroam), die het setup-venster voor je draait, nadat het ze heeft gecontroleerd met de SHA-256 die het zelf bevat. - - -## Over dit project - -Dit is mijn eigen setup, geen neutraal overzicht. Het is eigenzinnig: mijn favoriete instellingen en de software die ik echt gebruik, op de enige laptop die ik heb. Ik heb het opgeschreven zodat ik de machine snel opnieuw kan opbouwen, en zodat anderen die dezelfde dingen fijn vinden sneller bij hetzelfde resultaat uitkomen. Ik ben geen developer, gewoon iemand die naar Linux is overgestapt en daarna tegen van alles aanliep wat niet meteen werkte, en veel hiervan heb ik gaandeweg uitgezocht. - -CachyOS (Arch) is mijn daily driver, vooral omdat een deel van wat ik doe wat directere controle over het systeem vraagt dan een atomic image je geeft. Vroeger draaide ik het in dualboot met Bazzite (Fedora Atomic) op dezelfde machine, en die handleidingen houd ik bij. De [Aan de slag](https://zephyrus-linux.thectic.nl/nl/docs/)-pagina legt de keuze uit, en met de schakelaar bovenaan elke pagina wissel je tussen de twee sets handleidingen. - -Ik ben nog actief aan het testen en experimenteren: dingen kunnen veranderen, kapot gaan of achteraf onjuist blijken. Alles wat hier staat is gebaseerd op mijn eigen ervaring en is op eigen risico. - -Ik ben niet gelieerd aan ASUS, NVIDIA, Microsoft, CachyOS, Universal Blue of enig ander bedrijf of project dat hier wordt genoemd, word er niet door goedgekeurd en spreek niet namens hen. - -![Systeeminformatie-overzicht](src/static/images/system-info.avif) - - -## De site lokaal bouwen - -Deze documentatiesite is gebouwd met [Hugo](https://gohugo.io/) en het [Hextra](https://imfing.github.io/hextra/)-thema. Het thema is opgenomen als Hugo module (via Go modules, geen git submodules). - -**Vereisten:** -- [Hugo extended](https://gohugo.io/installation/) v0.160.0 (of hoger) -- [Go](https://go.dev/dl/) (vereist voor Hugo modules) -- Git -- VS Code - -Op Arch Linux / CachyOS: -```bash -sudo pacman -S hugo go -``` - -**Repository klonen:** -```bash -git clone https://github.com/THectic-NL/Zephyrus-Linux.git -cd Zephyrus-Linux -``` - -Hugo downloadt de thema-module automatisch de eerste keer dat je het uitvoert. - -**Ontwikkelserver starten:** -```bash -cd src -hugo server -``` - -De site is beschikbaar op `http://localhost:1313/`. Hugo detecteert wijzigingen en herlaadt automatisch. - -**Bouwen voor productie:** -```bash -cd src -hugo --gc --minify -``` - -De output wordt geschreven naar `./src/public/`. Bij een push naar `main` bouwt GitHub Actions de site en deployt die naar Bunny.net (Storage-zone + Pull Zone) op [zephyrus-linux.thectic.nl](https://zephyrus-linux.thectic.nl/). - - -## Afbeeldingen - -Alle afbeeldingen in deze repository gebruiken het [AVIF](https://en.wikipedia.org/wiki/AVIF)-formaat: open, royaltyvrij en efficiënter dan PNG of JPEG bij vergelijkbare kwaliteit. AVIF is de moderne standaard voor webafbeeldingen. - -Installeer `avifenc` uit het `libavif`-pakket om PNG-screenshots om te zetten naar AVIF: - -```bash -sudo pacman -S libavif -``` - -Batch-conversie van alle PNGs in `src/static/images/` (converteert en verwijdert de originelen): - -```bash -cd src/static/images -for f in *.png; do avifenc -q 80 -s 6 "$f" "${f%.png}.avif" && rm "$f"; done -``` - -- `-q 80`: 80% kwaliteit (schaal 0-100, 100 = verliesvrij) -- `-s 6`: encodersnelheid (0 = beste compressie, 10 = snelst) - - -## Credits & bronnen - -Dit project zou niet bestaan zonder het werk van deze mensen en communities: - -- **[ASUS Linux community](https://asus-linux.org/)**: Het project achter `asusctl` en `rog-control-center`, tegenwoordig onderhouden onder het [Open Gaming Collective](https://github.com/OpenGamingCollective/asusctl). Luke Jones is hier een grote drijvende kracht achter geweest, en ook andere bijdragers hebben kernelpatches ingediend, waarvan er veel inmiddels in mainline Linux zijn opgenomen, waardoor moderne ASUS ROG-laptops echt bruikbaar zijn op Linux. -- **[WinUtil](https://github.com/ChrisTitusTech/winutil)**: De Windows-tool die voor elke tweak het exacte script toont dat hem toepast en het script dat hem terugdraait, gegenereerd uit hetzelfde bestand dat de tool draait. Het voorbeeld voor de setup-referentie. -- **[G-Helper](https://github.com/seerge/g-helper)**: De Windows-tool die per model een zip met ASUS-kleurprofielen van de ASUS CDN ophaalt en die aanbiedt als Native, sRGB, DCI-P3 en Display P3. De fabrieksprofielen in deze repository komen uit hetzelfde soort pakket, gevonden met reverse engineering. Je kunt er op Linux nog weinig mee, de [handleiding over kleurprofielen](https://zephyrus-linux.thectic.nl/nl/docs/hardware/color-profiles/) legt uit waarom. -- **[CachyOS](https://cachyos.org/)**: Een op Arch gebaseerde distributie met uitgebreide hardware-specifieke tuning: een verbeterde scheduler (BORE/EEVDF), beter energiebeheer, ondersteuning voor dynamische verversingsfrequentie, en ingebouwde drivers voor zowel de AMD iGPU als de NVIDIA dGPU, inclusief geïntegreerde GPU-switching. Een van de twee distributies die deze handleidingen dekken. -- **[Bazzite / Universal Blue](https://universal-blue.org/)**: De mensen die de atomic Fedora-images maken waarop deze laptop goed draait, en die veel van de patches hebben bijgedragen die hem beter laten presteren. De andere distributie die deze handleidingen dekken. -- **[Foxboron/sbctl](https://github.com/Foxboron/sbctl)**: Beheertool voor Secure Boot-sleutels, gebruikt voor het inschrijven van eigen sleutels en het ondertekenen van de kernel en EFI-binaries. Onmisbaar voor het actief houden van Secure Boot met een aangepaste kernel. -- **[sched-ext / scx_lavd](https://github.com/sched-ext/scx)**: Het Linux scheduler-extensibiliteitsframework achter de `scx_lavd` CPU-scheduler. Uitstekende latentie en responsiviteit voor desktop- en gamingworkloads. -- **[lz42/libinput-config](https://github.com/lz42/libinput-config)**: Kernel-niveau workaround voor de ontbrekende scroll speed-instelling in GNOME/Wayland, door libinput-events te onderscheppen vóór de compositor ze verwerkt. -- **[Yubico/pam-u2f](https://github.com/Yubico/pam-u2f)**: PAM-module waarmee een FIDO2-hardwaresleutel (een aanraking van de YubiKey) het wachtwoord vervangt bij sudo, de grafische sudo-prompt en het vergrendelscherm. -- **[Looking Glass](https://looking-glass.io/)**: Een project dat het beeld van een VM met GPU-passthrough met lage latentie op de host toont. Werkt niet op deze hardware, maar het project en de documentatie zijn uitstekend. -- **[Hugo](https://gohugo.io/)**: De statische sitegenerator waarmee de documentatiesite is gebouwd. -- **[Hextra](https://imfing.github.io/hextra/)**: Het Hugo-thema waarop de documentatiesite is gebouwd. - - -## Licentie - -Dit project valt onder de [MIT-licentie](LICENSE). +Verhuisd naar https://codeberg.org/THectic/Zephyrus-Linux