summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNippy <nippy@Nippy-Mac-mini.local>2026-10-09 12:53:18 +0200
committerNippy <nippy@Nippy-Mac-mini.local>2026-10-09 12:53:18 +0200
commit224347aee80daad096556250a2939d9e3fd31880 (patch)
tree9ef025a5ecb08f8a70bc7d15606916d3b1fa3be7
parent44d4aa3cb4688ffb45ef234f9cebbe00dc51b8d0 (diff)
downloadRaveOS-build-iso-224347aee80daad096556250a2939d9e3fd31880.tar.gz
RaveOS-build-iso-224347aee80daad096556250a2939d9e3fd31880.zip
fix
-rw-r--r--.forgejo/workflows/build-iso.yml69
-rw-r--r--README.md92
-rwxr-xr-xbuild.sh2
-rw-r--r--plymouth-assets/generate_text_assets.py15
-rw-r--r--plymouth-assets/raveos-installed.script4
-rw-r--r--plymouth-assets/raveos.script8
-rw-r--r--releng/airootfs/etc/profile.d/raveos-fastfetch.sh2
l---------[-rw-r--r--]releng/airootfs/etc/resolv.conf2
-rw-r--r--releng/airootfs/etc/skel/.bashrc6
-rw-r--r--releng/airootfs/etc/systemd/network/20-wwan.network19
l---------releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-config.service1
l---------releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-final.service1
l---------releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-local.service1
l---------releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-main.service1
l---------releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-network.service1
l---------releng/airootfs/etc/systemd/system/dbus-org.freedesktop.ModemManager1.service1
l---------releng/airootfs/etc/systemd/system/dbus-org.freedesktop.network1.service1
l---------releng/airootfs/etc/systemd/system/multi-user.target.wants/ModemManager.service1
l---------releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_fcopy_daemon.service1
l---------releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_kvp_daemon.service1
l---------releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_vss_daemon.service1
l---------releng/airootfs/etc/systemd/system/multi-user.target.wants/vboxservice.service1
l---------releng/airootfs/etc/systemd/system/multi-user.target.wants/vmtoolsd.service1
l---------releng/airootfs/etc/systemd/system/multi-user.target.wants/vmware-vmblock-fuse.service1
l---------releng/airootfs/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service1
l---------releng/airootfs/etc/systemd/system/sockets.target.wants/pcscd.socket1
l---------releng/airootfs/etc/systemd/system/sockets.target.wants/systemd-networkd.socket1
-rwxr-xr-xreleng/airootfs/usr/local/bin/livecd-sound4
-rw-r--r--releng/airootfs/usr/local/share/livecd-sound/asound.conf.in1
-rwxr-xr-xreleng/airootfs/usr/share/calamares/kernel-install/95-raveos.install18
-rw-r--r--releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script8
-rw-r--r--releng/efiboot/loader/entries/02-archiso-linux-nomodeset.conf5
-rw-r--r--releng/packages.x86_642
-rw-r--r--releng/profiledef.sh5
-rw-r--r--releng/syslinux/archiso_sys-linux.cfg23
35 files changed, 147 insertions, 155 deletions
diff --git a/.forgejo/workflows/build-iso.yml b/.forgejo/workflows/build-iso.yml
index 6284e78..80723a2 100644
--- a/.forgejo/workflows/build-iso.yml
+++ b/.forgejo/workflows/build-iso.yml
@@ -23,12 +23,11 @@ jobs:
mkdir -p "${GITHUB_WORKSPACE}/.tmp"
df -h
- - name: Fix raveos-core-repo pacman repo (overwrite clean, first in order)
+ - name: Fix raveos-core-repo pacman repo (overwrite clean)
run: |
set -euo pipefail
sudo sed -i '/^\[raveos-core-repo\]/,/^$/d' /etc/pacman.conf
sudo sed -i '/^\[core\]/i\[raveos-core-repo]\nSigLevel = Required DatabaseOptional\nServer = https://page.rp1.hu/x86_64/\n' /etc/pacman.conf
- echo "=== repo sorrend ellenorzes:"
grep -n '^\[raveos-core-repo\]\|^\[core\]' /etc/pacman.conf
- name: Verify archiso
@@ -186,11 +185,9 @@ jobs:
echo "${{ secrets.VPS_RELEASE_KEY }}" > ~/.ssh/vps_release_key
chmod 600 ~/.ssh/vps_release_key
- # Új ISO feltöltése
scp -i ~/.ssh/vps_release_key -P ${{ secrets.VPS_PORT }} -o StrictHostKeyChecking=no \
"$ISO_FILE" "${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }}:${{ secrets.VPS_RELEASES_PATH }}/${ISO_NAME}"
- # 3-nál régebbi ISO-k törlése a VPS-ről
ssh -i ~/.ssh/vps_release_key -p ${{ secrets.VPS_PORT }} -o StrictHostKeyChecking=no \
${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }} "ls -t ${{ secrets.VPS_RELEASES_PATH }}/*.iso 2>/dev/null | tail -n +4 | xargs -r rm -f"
@@ -228,7 +225,6 @@ jobs:
[[ "$RELEASE_ID" =~ ^[0-9]+$ ]] || { echo "HIBA: Ervenytelen RELEASE_ID: $RELEASE_ID"; exit 1; }
echo "Release ID: $RELEASE_ID"
- # External link hozzáadása attachment helyett
curl -f -s --retry 3 \
-X POST "https://git.rp1.hu/api/v1/repos/RaveOS/RaveOS-Releases/releases/${RELEASE_ID}/assets?external_url=https://release.rp1.hu/${ISO_NAME}" \
-H "Authorization: token ${{ secrets.RELEASE_TOKEN }}" \
@@ -239,7 +235,6 @@ jobs:
echo "TAG=${TAG}" >> "$GITHUB_ENV"
echo "ISO_SHA256=${ISO_SHA256}" >> "$GITHUB_ENV"
- # Regi release-ek torlese (3-nal tobbet nem tartunk)
RELEASES=$(curl -f -s --retry 3 --retry-delay 5 \
"https://git.rp1.hu/api/v1/repos/RaveOS/RaveOS-Releases/releases?limit=50" \
-H "Authorization: token ${{ secrets.RELEASE_TOKEN }}")
@@ -296,6 +291,68 @@ jobs:
bash scripts/discord-notify.sh "${DISCORD_WEBHOOK}" "${TAG}" "${ISO_NAME}" "${ISO_SHA256}"
+ - name: Update website release data (rp1-blog)
+ if: success()
+ env:
+ RELEASE_TOKEN: ${{ secrets.RELEASE_TOKEN }}
+ TAG: ${{ env.TAG }}
+ ISO_NAME: ${{ env.ISO_NAME }}
+ ISO_SHA256: ${{ env.ISO_SHA256 }}
+ run: |
+ set -euo pipefail
+ if [ -z "${RELEASE_TOKEN:-}" ] || [ -z "${ISO_NAME:-}" ] || [ -z "${ISO_SHA256:-}" ]; then
+ echo "FIGYELMEZTETES: hianyzo adatok, weboldal frissites kihagyva"
+ exit 0
+ fi
+
+ ISO_FILE=$(ls output/*.iso 2>/dev/null | head -1 || true)
+ SIZE_FMT="2.3 GB"
+ if [ -n "${ISO_FILE:-}" ]; then
+ SIZE_RAW=$(du -h "$ISO_FILE" | cut -f1)
+ SIZE_FMT=$(echo "$SIZE_RAW" | sed 's/G$/ GB/; s/M$/ MB/')
+ fi
+ export SIZE_FMT
+
+ python3 - <<'PY'
+ import base64, json, os, urllib.request
+ from datetime import date
+
+ token = os.environ["RELEASE_TOKEN"]
+ iso_name = os.environ["ISO_NAME"]
+ iso_sha = os.environ["ISO_SHA256"]
+ tag = os.environ.get("TAG", "").lstrip("v")
+ size_fmt = os.environ.get("SIZE_FMT") or "2.3 GB"
+
+ api = "https://git.rp1.hu/api/v1/repos/RaveOS/rp1-blog/contents/src/_data/releases.json"
+ hdr = {"Authorization": "token " + token, "Content-Type": "application/json"}
+
+ with urllib.request.urlopen(urllib.request.Request(api, headers=hdr), timeout=30) as r:
+ data = json.load(r)
+
+ doc = json.loads(base64.b64decode(data["content"]).decode())
+ latest = doc.setdefault("latest", {})
+ latest["version"] = tag or latest.get("version", "")
+ latest["codename"] = ("RaveOS v" + tag) if tag else latest.get("codename", "")
+ latest["releaseDate"] = date.today().isoformat()
+ latest["isoFilename"] = iso_name
+ latest["isoSize"] = size_fmt
+ latest["sha256"] = iso_sha
+ latest["downloadUrl"] = latest.get("downloadUrl") or "https://links.rp1.hu/raveos-download"
+
+ new_content = json.dumps(doc, ensure_ascii=False, indent=2) + "\n"
+ body = json.dumps({
+ "content": base64.b64encode(new_content.encode()).decode(),
+ "sha": data["sha"],
+ "message": "release " + (tag or iso_name),
+ "branch": "main",
+ }).encode()
+
+ req = urllib.request.Request(api, data=body, headers=hdr, method="PUT")
+ with urllib.request.urlopen(req, timeout=30) as r:
+ result = json.load(r)
+ print("Weboldal adatok frissitve, commit:", result.get("commit", {}).get("sha", "?"))
+ PY
+
- name: Cleanup (SAFE)
if: always()
run: |
diff --git a/README.md b/README.md
index dac8ed5..a7b21a4 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# RaveOS — ISO Build....
+# RaveOS - ISO Build....
Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizált telepítővel és teljes témarendszerrel.
#
@@ -134,7 +134,7 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
#### `[theme]` COSMIC billentyűzet-kiosztás javítás
- A `raveos-cosmic-apply.sh` boot-kor, bejelentkezés előtt beírja a Calamares által
választott kiosztást a `~/.config/cosmic/com.system76.CosmicComp/v1/xkb_config`-ba
- (skel + meglévő userek) — korábban rossz fájlba írt, ezért a COSMIC angol
+ (skel + meglévő userek) - korábban rossz fájlba írt, ezért a COSMIC angol
billentyűzettel indult.
- `raveos-cosmic-first-login.sh`: a helyes `xkb_config` fájlba és RON formátumba ír.
@@ -193,13 +193,13 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
#### `[calamares]` GNOME Wayland billentyűzet-kiosztás javítás
- `raveos-calamares-theme/etc/calamares/modules/keyboard.conf` létrehozva
- (`configure: { gnome: true, useLocale1: true }`) — eddig a Calamares gyári
+ (`configure: { gnome: true, useLocale1: true }`) - eddig a Calamares gyári
`gnome: false` alapértéke miatt a telepítéskor választott billentyűzetkiosztás
nem érvényesült a GNOME Wayland session-ben
#### `[app]` App Installer: Kdenlive flatpak-ra, Steam proton-cachyos-slr javítás
- `kdenlive`: pacman → `flatpak-user` (`org.kde.kdenlive`)
-- Steam telepítő script: `proton-cachyos` → `proton-cachyos-slr` — a `proton-cachyos`
+- Steam telepítő script: `proton-cachyos` → `proton-cachyos-slr` - a `proton-cachyos`
önmagában nem is létezik csomagként a chaotic-aur-ban, csak `-native`/`-slr`
variánsok, emiatt a helytelen (natív) build került be korábban
@@ -209,17 +209,17 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
#### `[calamares]` Vivaldi felvéve a kötelező csomagok közé
- `desktopselect.conf` `mandatory_packages`: `vivaldi` hozzáadva (hivatalos Arch
- `extra` csomag) — eddig egyik asztali környezetnél sem volt alapértelmezett
+ `extra` csomag) - eddig egyik asztali környezetnél sem volt alapértelmezett
böngésző, emiatt pl. a `raveos-welcome` támogatás-linkje sem tudott megnyílni
#### `[iso]` `raveos-core-repo` redundáns mirror + `Include=`-alapú mirrorlist
- `[raveos-core-repo]` `pacman.conf`-ban az eddigi közvetlen `Server=` sor helyett
- `Include = /etc/pacman.d/raveos-core-mirrorlist` — a mirrorlist tartalmát mostantól
+ `Include = /etc/pacman.d/raveos-core-mirrorlist` - a mirrorlist tartalmát mostantól
a `raveos-mirrorlist` csomag szolgáltatja (meglévő telepítéseken automatikusan
átállítja a configot egy install-hook, ha még a régi formátumban van)
- Az élő ISO-ba közvetlenül bekerül a `raveos-core-mirrorlist` fájl is, benne az
elsődleges (`page.rp1.hu`) és a tartalék GitHub Releases szerver
- (`github.com/rave-os/RaveOS-core-repo-mirror`) — ha az elsődleges nem elérhető,
+ (`github.com/rave-os/RaveOS-core-repo-mirror`) - ha az elsődleges nem elérhető,
pacman automatikusan átvált
#### `[iso]` `raveos-core-repo` publikálás: git → rsync átállás, adatbázis-hibák javítva
@@ -231,7 +231,7 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
#### `[iso]` `chaotic-mirrorlist` felesleges `.pacnew` elkerülése
- A `chaotic-rankmirrors.service` minden boot-kor élő méréssel felülírja a
`chaotic-mirrorlist` tartalmát, emiatt egy csomagfrissítéskor pacman `.pacnew`-t
- hozott létre rá feleslegesen — `NoUpgrade = etc/pacman.d/chaotic-mirrorlist`
+ hozott létre rá feleslegesen - `NoUpgrade = etc/pacman.d/chaotic-mirrorlist`
hozzáadva a `pacman.conf`-hoz, hogy pacman ne is próbálja kezelni ezt a fájlt
## Build 2026-07-18
@@ -246,24 +246,24 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
- Záró biztonsági háló a telepítés végén (`calamares-fix-bootentry.sh`): ha valamelyik bejegyzésből mégis hiányozna a `root=`, az `/etc/fstab`-ból pótolja
#### `[calamares]` Btrfs subvolume-elrendezés bevezetve
-- Eddig `erase` módban egyetlen lapos `@` subvolume jött létre — nincs elkülönítve semmi
+- Eddig `erase` módban egyetlen lapos `@` subvolume jött létre - nincs elkülönítve semmi
- Mostantól archinstall-stílusú elrendezés (`partition.conf`): `@` → `/`, `@home` → `/home`, `@log` → `/var/log`, `@pkg` → `/var/cache/pacman/pkg`, `@snapshots` → `/.snapshots`
- Előfeltétele a snapshot-alapú eszközöknek (`grub-btrfs`, Snapper)
## Build 2026-07-06
#### `[security]` GPG csomag-aláírás bevezetve
-- `[raveos-core-repo]` `SigLevel` átállítva `Never TrustAll`-ról `Required DatabaseOptional`-ra — minden csomag aláírás-ellenőrzés kötelező, az adatbázis-aláírás opcionális
-- `raveos-keyring` csomag hozzáadva a `packages.x86_64`-hez és a `shellprocess-pacstrap.conf` kezdeti pacstrap listájához — ez biztosítja hogy a célrendszer bizalma a kulcsban már a nagy csomag-batch előtt beálljon
+- `[raveos-core-repo]` `SigLevel` átállítva `Never TrustAll`-ról `Required DatabaseOptional`-ra - minden csomag aláírás-ellenőrzés kötelező, az adatbázis-aláírás opcionális
+- `raveos-keyring` csomag hozzáadva a `packages.x86_64`-hez és a `shellprocess-pacstrap.conf` kezdeti pacstrap listájához - ez biztosítja hogy a célrendszer bizalma a kulcsban már a nagy csomag-batch előtt beálljon
#### `[iso]` `packages.x86_64` nagytakarítás
-- ~70 elavult rescue/live-környezet/VM-guest csomag eltávolítva — RaveOS mára tisztán telepítő-orientált, nincs külön live/rescue pozicionálás
-- `yay-bin` eltávolítva (a `packages.x86_64`-ből és a `shellprocess-pacstrap.conf`-ból is) — pacman repo-elsőbbség miatt ha nálunk van pinnelve, sosem frissül a Chaotic-AUR-ról; most szabadon a Chaotic-AUR-ról jön
-- `bluez`/`bluez-libs`/`bluez-tools`/`bluez-utils` és `hblock` átkerült a `packages.x86_64`-ből (élő ISO) a `desktopselect.conf` mandatory_packages-ébe (végleges rendszer) — az élő médiumon nem kellenek, de a telepített rendszeren igen
-- `cow_spacesize=75%` — a korábbi hiányzó érték miatt az archiso alapértelmezett 256M-re esett vissza (az eredeti szándék 4G volt)
+- ~70 elavult rescue/live-környezet/VM-guest csomag eltávolítva - RaveOS mára tisztán telepítő-orientált, nincs külön live/rescue pozicionálás
+- `yay-bin` eltávolítva (a `packages.x86_64`-ből és a `shellprocess-pacstrap.conf`-ból is) - pacman repo-elsőbbség miatt ha nálunk van pinnelve, sosem frissül a Chaotic-AUR-ról; most szabadon a Chaotic-AUR-ról jön
+- `bluez`/`bluez-libs`/`bluez-tools`/`bluez-utils` és `hblock` átkerült a `packages.x86_64`-ből (élő ISO) a `desktopselect.conf` mandatory_packages-ébe (végleges rendszer) - az élő médiumon nem kellenek, de a telepített rendszeren igen
+- `cow_spacesize=75%` - a korábbi hiányzó érték miatt az archiso alapértelmezett 256M-re esett vissza (az eredeti szándék 4G volt)
#### `[calamares]` Telepítési hibajavítások (valódi telepítési tesztekkel feltárva)
-- `lsb-release` visszaállítva a csomaglistába — hiánya a `shellprocess-branding.conf`-ot törte
+- `lsb-release` visszaállítva a csomaglistába - hiánya a `shellprocess-branding.conf`-ot törte
- `raveos-kde-theme` → helyes név `raveos-plasma-theme` (két helyen: `desktopselect.conf` és `shellprocess-final.conf` auto-apply ellenőrzés)
- `plasma-bigscreen` eltávolítás `-Rns`-ről `-Rcns`-re javítva (a `-Rns` némán elhasalt függőség-ütközésen)
- `raveos-sddm-theme`: `qt6-multimedia` függőség hozzáadva (SDDM alapértelmezett megjelenésre esett vissza nélküle)
@@ -279,10 +279,10 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
### Build 2026-05-10
-#### `[iso]` chaotic-rankmirrors — automatikus mirror rangsoroló
+#### `[iso]` chaotic-rankmirrors - automatikus mirror rangsoroló
- Boot után automatikusan teszteli az összes Chaotic-AUR mirrort válaszidő (TTFB) alapján
- A top 5 leggyorsabb mirrort írja be a `/etc/pacman.d/chaotic-mirrorlist`-be
-- `After=network-online.target` — mire a Calamares indul, már a legjobb mirror aktív
+- `After=network-online.target` - mire a Calamares indul, már a legjobb mirror aktív
- Tesztelt mirrorok: de, cdn, geo, pl, nl, ch, se, fr, gb és régióspecifikus variánsaik
#### `[iso]` Mirror optimalizálás
@@ -294,12 +294,12 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
#### `[ci]` Build workflow javítások
- Runner verzió eltérésnél automatikus `pacman -Syu` fut le, nem épít hibát
-- ISO mount loop eszköz hiba kezelés javítva — ha a loop eszköz nem elérhető, figyelmeztetés helyett folytatódik a build
+- ISO mount loop eszköz hiba kezelés javítva - ha a loop eszköz nem elérhető, figyelmeztetés helyett folytatódik a build
- ISO feltöltés: részletesebb logolás, `-f` flag hozzáadva
- Régi release-ek automatikus törlése: mindig csak az utolsó 3 marad
#### `[ci]` raveos-core-repo repoadd workflow javítás
-- `actions/checkout@v4` lecserélve manuális SSH klónra — az HTTPS-en keresztüli nagy bináris repo (1.8GB) SSL EOF hibát okozott Nginx mögött
+- `actions/checkout@v4` lecserélve manuális SSH klónra - az HTTPS-en keresztüli nagy bináris repo (1.8GB) SSL EOF hibát okozott Nginx mögött
- SSH klón megkerüli az SSL terminálást, stabil nagy repo esetén is
### Build 2026-04-08
@@ -319,49 +319,49 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
#### `[app]` RaveOS App Installer
-- **rave CLI integráció** — `rave` rendszer karbantartó parancs (upgrade, clean, autoremove, install, remove, search, stb.) és bash completion (`rave-comp.sh`) beépítve a csomagba. Orphan cleanup guard fix (`pacman -Qtdq` üres → skip).
-- **13 dconf INI fájl** — 6 új beállítás fájl: `nautilus.ini` (tree-view, show-hidden), `media-keys.ini` (Ctrl+Alt+T = Terminal), `peripherals.ini` (numlock, flat mouse), `session.ini` (idle-delay 900), `app-folders.ini` (System mappa), `gtk4-file-chooser.ini` (sort-directories-first). 2 frissített: `shell.ini`, `extensions.ini`.
-- **Hidden apps** — 6 felesleges alkalmazás (`bssh`, `bvnc`, `avahi-discover`, `vim`, `qvidcap`, `qv4l2`) elrejtése NoDisplay=true override-dal a `~/.local/share/applications/` mappában.
-- **dash-to-dock frissítés** — fekete háttér, 33% átlátszóság, 44px ikonok, DOTS running indicator stílus, minimize-or-overview kattintás.
-- **burn-my-windows** — `aura-glow-animation-time=444` hozzáadva.
+- **rave CLI integráció** - `rave` rendszer karbantartó parancs (upgrade, clean, autoremove, install, remove, search, stb.) és bash completion (`rave-comp.sh`) beépítve a csomagba. Orphan cleanup guard fix (`pacman -Qtdq` üres → skip).
+- **13 dconf INI fájl** - 6 új beállítás fájl: `nautilus.ini` (tree-view, show-hidden), `media-keys.ini` (Ctrl+Alt+T = Terminal), `peripherals.ini` (numlock, flat mouse), `session.ini` (idle-delay 900), `app-folders.ini` (System mappa), `gtk4-file-chooser.ini` (sort-directories-first). 2 frissített: `shell.ini`, `extensions.ini`.
+- **Hidden apps** - 6 felesleges alkalmazás (`bssh`, `bvnc`, `avahi-discover`, `vim`, `qvidcap`, `qv4l2`) elrejtése NoDisplay=true override-dal a `~/.local/share/applications/` mappában.
+- **dash-to-dock frissítés** - fekete háttér, 33% átlátszóság, 44px ikonok, DOTS running indicator stílus, minimize-or-overview kattintás.
+- **burn-my-windows** - `aura-glow-animation-time=444` hozzáadva.
- **blur-my-shell, vitals, shutdowntimer** beállítások frissítése.
-- **SHA256 manifest** — 623 fájl, 0 FAIL.
+- **SHA256 manifest** - 623 fájl, 0 FAIL.
#### `[theme]` profile.d export fix
-- **profile.d export bug javítás** — `export _RAVEOS_GREETING_DONE=1` → `_RAVEOS_GREETING_DONE=1` (export nélkül). A GDM login shellje source-olja a `/etc/profile.d/` scripteket → `export` esetén a változó öröklődik a gnome-session és minden gyerek processzhez → a guard blokkolta a fastfetch-et minden terminálon. Fix: shell-local változó, nem öröklődik.
+- **profile.d export bug javítás** - `export _RAVEOS_GREETING_DONE=1` → `_RAVEOS_GREETING_DONE=1` (export nélkül). A GDM login shellje source-olja a `/etc/profile.d/` scripteket → `export` esetén a változó öröklődik a gnome-session és minden gyerek processzhez → a guard blokkolta a fastfetch-et minden terminálon. Fix: shell-local változó, nem öröklődik.
#### `[iso]` Csomagok
-- **`hblock` hozzáadva** a `packages.x86_64`-hez — a `rave upgrade` parancs használja, nélküle "command not found" hiba volt.
+- **`hblock` hozzáadva** a `packages.x86_64`-hez - a `rave upgrade` parancs használja, nélküle "command not found" hiba volt.
#### `[theme]` Terminál és SHA256 javítások
-- **GNOME Console terminál téma javítás** — a `/etc/profile.d/` scriptek csak login shellben futnak, de a GNOME Console (kgx) nem login shellt indít. Megoldás: `.bashrc` snippet hozzáadva, ami source-olja a profile.d scriptet. Guard változó (`_RAVEOS_GREETING_DONE`) megakadályozza a dupla futást login shelleknél.
-- **GNOME kitty telepítés javítás** — a GNOME téma többé nem telepíti automatikusan a kitty csomagot (csak `fastfetch`). A kitty konfig fájlok a témában maradnak, így ha a felhasználó kézzel felrakja a kitty-t, a téma azonnal érvényes.
-- **Hyprland terminál támogatás bővítés** — a Hyprland `theme-data.tar.gz` mostantól tartalmazza a fastfetch, kitty és profile.d fájlokat (korábban hiányoztak). A `metadata.json` kiegészítve terminal szekciókkal, a kitty automatikusan települ.
-- **SHA256 metadata.json javítás** — mindkét metadata.json (GNOME + Hyprland) frissítve, manifest újragenerálva, 437/437 fájl hash egyezik.
+- **GNOME Console terminál téma javítás** - a `/etc/profile.d/` scriptek csak login shellben futnak, de a GNOME Console (kgx) nem login shellt indít. Megoldás: `.bashrc` snippet hozzáadva, ami source-olja a profile.d scriptet. Guard változó (`_RAVEOS_GREETING_DONE`) megakadályozza a dupla futást login shelleknél.
+- **GNOME kitty telepítés javítás** - a GNOME téma többé nem telepíti automatikusan a kitty csomagot (csak `fastfetch`). A kitty konfig fájlok a témában maradnak, így ha a felhasználó kézzel felrakja a kitty-t, a téma azonnal érvényes.
+- **Hyprland terminál támogatás bővítés** - a Hyprland `theme-data.tar.gz` mostantól tartalmazza a fastfetch, kitty és profile.d fájlokat (korábban hiányoztak). A `metadata.json` kiegészítve terminal szekciókkal, a kitty automatikusan települ.
+- **SHA256 metadata.json javítás** - mindkét metadata.json (GNOME + Hyprland) frissítve, manifest újragenerálva, 437/437 fájl hash egyezik.
### Build 2026-02-26
#### `[app]` RaveOS App Installer
-- **SHA256 integritásvédelem** — minden művelet (telepítés, törlés, mentés, visszaállítás, téma alkalmazás) blokkolva van, ha bármely követett fájl módosult. Az Infó oldalon valós idejű integritás állapot látható a módosult fájlok listájával. ISO telepítés alatt (Calamares) még nincs manifest, így az ellenőrzés nem blokkol.
-- **Terminál üdvözlő rendszer** — a téma alkalmazás mostantól telepíti a fastfetch + kitty csomagokat és beállít egy rendszerszintű terminál üdvözlőt az `/etc/profile.d/`-n keresztül. GNOME Console-ban ASCII "RAVE OS" szöveges banner jelenik meg, Kitty terminálban a teljes bagoly logó PNG-ként a kitty grafikus protokollon keresztül. A kitty kép reszponzív — 8–24 sor között skálázódik a terminál magasságától függően.
-- **Extension frissítés** — a `unity-like-appswitcher@gonza.com` lecserélve a karbantartott fork-ra: `unity-like-appswitcher-reforged@gabeszm` (magyar lokalizációval).
-- **Téma oldal UI** — a GNOME és Hyprland téma kártyák most már vízszintesen középre igazítottak.
-- **Hyprland terminál támogatás** — a `_setup_terminal()` hívás a `apply_gnome_theme()` és `apply_hyprland_theme()` függvényekből is meghívódik, így mindkét asztali környezet megkapja a fastfetch + kitty beállítást.
-- **Verzió konzisztencia** — minden belépési pont (`main.py`, `bin/raveos-app-installer.py`) a központi `config.py`-ból importálja az `APP_VERSION`-t a beégetett stringek helyett.
-- **Infó oldal** — alkalmazás verzió, lista verzió, téma verzió és SHA256 integritás állapot egyetlen kártya elrendezésben.
+- **SHA256 integritásvédelem** - minden művelet (telepítés, törlés, mentés, visszaállítás, téma alkalmazás) blokkolva van, ha bármely követett fájl módosult. Az Infó oldalon valós idejű integritás állapot látható a módosult fájlok listájával. ISO telepítés alatt (Calamares) még nincs manifest, így az ellenőrzés nem blokkol.
+- **Terminál üdvözlő rendszer** - a téma alkalmazás mostantól telepíti a fastfetch + kitty csomagokat és beállít egy rendszerszintű terminál üdvözlőt az `/etc/profile.d/`-n keresztül. GNOME Console-ban ASCII "RAVE OS" szöveges banner jelenik meg, Kitty terminálban a teljes bagoly logó PNG-ként a kitty grafikus protokollon keresztül. A kitty kép reszponzív - 8-24 sor között skálázódik a terminál magasságától függően.
+- **Extension frissítés** - a `unity-like-appswitcher@gonza.com` lecserélve a karbantartott fork-ra: `unity-like-appswitcher-reforged@gabeszm` (magyar lokalizációval).
+- **Téma oldal UI** - a GNOME és Hyprland téma kártyák most már vízszintesen középre igazítottak.
+- **Hyprland terminál támogatás** - a `_setup_terminal()` hívás a `apply_gnome_theme()` és `apply_hyprland_theme()` függvényekből is meghívódik, így mindkét asztali környezet megkapja a fastfetch + kitty beállítást.
+- **Verzió konzisztencia** - minden belépési pont (`main.py`, `bin/raveos-app-installer.py`) a központi `config.py`-ból importálja az `APP_VERSION`-t a beégetett stringek helyett.
+- **Infó oldal** - alkalmazás verzió, lista verzió, téma verzió és SHA256 integritás állapot egyetlen kártya elrendezésben.
#### `[theme]` GNOME Téma (theme-data.tar.gz)
-- `fastfetch/config.jsonc` — szöveges logó konfig hagyományos terminálokhoz
-- `fastfetch/config-kitty.jsonc` — PNG képes logó konfig "RaveOS Beta 2.0" fejléccel
-- `fastfetch/raveos-logo.txt` — színes RAVE OS blokkbetűs banner (zöld + cián)
-- `fastfetch/raveos-logo.png` — 256×256 optimalizált bagoly logó kitty protokollhoz
-- `kitty/kitty.conf` — Nord sötét téma, JetBrains Mono betűtípus, 0.92 átlátszóság
-- `profile.d/raveos-fastfetch.sh` — rendszerszintű üdvözlő script reszponzív képpel
+- `fastfetch/config.jsonc` - szöveges logó konfig hagyományos terminálokhoz
+- `fastfetch/config-kitty.jsonc` - PNG képes logó konfig "RaveOS Beta 2.0" fejléccel
+- `fastfetch/raveos-logo.txt` - színes RAVE OS blokkbetűs banner (zöld + cián)
+- `fastfetch/raveos-logo.png` - 256×256 optimalizált bagoly logó kitty protokollhoz
+- `kitty/kitty.conf` - Nord sötét téma, JetBrains Mono betűtípus, 0.92 átlátszóság
+- `profile.d/raveos-fastfetch.sh` - rendszerszintű üdvözlő script reszponzív képpel
- Extension csere: `unity-like-appswitcher@gonza.com` → `unity-like-appswitcher-reforged@gabeszm`
- `dconf/shell.ini` enabled-extensions lista frissítve az új extension UUID-val
@@ -385,7 +385,7 @@ Arch Linux alapú egyedi disztribúció tőbb asztali környezettel, automatizá
- Discord telepítő script tartalmazza a Vencord + OpenAsar modokat és pacman hookot az automatikus újratelepítéshez Discord frissítés után
-### Build 2026-02-15 — Első béta
+### Build 2026-02-15 - Első béta
- Első nyilvános béta kiadás (`RaveOS-2.0-Beta`)
- GNOME asztali környezet Yaru-olive-dark témával, zöld akcentussal
diff --git a/build.sh b/build.sh
index ca8b811..5c3651c 100755
--- a/build.sh
+++ b/build.sh
@@ -16,7 +16,7 @@ echo " Output: $OUTDIR"
echo " Work: $WORKDIR"
echo ""
-mkarchiso -v -w "$WORKDIR" -o "$OUTDIR" releng/
+mkarchiso -v -w "$WORKDIR" -o "$OUTDIR" -c "$CACHEDIR" releng/
echo ""
echo "==> Build completed successfully!"
diff --git a/plymouth-assets/generate_text_assets.py b/plymouth-assets/generate_text_assets.py
index 1b6ee4a..068e2e0 100644
--- a/plymouth-assets/generate_text_assets.py
+++ b/plymouth-assets/generate_text_assets.py
@@ -1,23 +1,18 @@
#!/usr/bin/env python3
-"""Wordmark + tagline + status PNG-k generalasa a Plymouth temahoz.
-Placeholder fontokkal (nincs Bebas Neue a rendszeren): Noto Sans Condensed
-ExtraBold a wordmarkhoz, Ubuntu Mono a tagline/status szoveghez.
-"""
from PIL import Image, ImageDraw, ImageFont
-SCALE = 3 # 3x render, majd a Plymouth script kicsinyiti - crisp marad
+SCALE = 3
WORDMARK_FONT = "/usr/share/fonts/noto/NotoSans-CondensedExtraBold.ttf"
MONO_FONT = "/usr/share/fonts/ubuntu/Ubuntu-B.ttf"
MONO_FONT_REGULAR = "/usr/share/fonts/ubuntu/Ubuntu-R.ttf"
-RAVE_COLOR = (232, 232, 230, 255) # #e8e8e6
-OS_COLOR = (98, 160, 82, 255) # #62a052
-MUTED_COLOR = (122, 125, 130, 255) # #7a7d82
+RAVE_COLOR = (232, 232, 230, 255)
+OS_COLOR = (98, 160, 82, 255)
+MUTED_COLOR = (122, 125, 130, 255)
def draw_tracked_text(draw, xy, text, font, fill, tracking):
- """Szoveg rajzolasa kezi betukoz-nyujtassal (PIL-nek nincs natix tracking)."""
x, y = xy
for ch in text:
draw.text((x, y), ch, font=font, fill=fill)
@@ -41,7 +36,7 @@ def make_wordmark():
d = ImageDraw.Draw(tmp)
w_rave = measure_tracked(d, "RAVE", font, tracking)
w_os = measure_tracked(d, "OS", font, tracking)
- gap = tracking # a ket szo kozott is annyi hely mint a betukoz
+ gap = tracking
total_w = int(w_rave + gap + w_os) + 20
ascent, descent = font.getmetrics()
total_h = ascent + descent + 10
diff --git a/plymouth-assets/raveos-installed.script b/plymouth-assets/raveos-installed.script
index 90ee177..0ba695a 100644
--- a/plymouth-assets/raveos-installed.script
+++ b/plymouth-assets/raveos-installed.script
@@ -1,4 +1,3 @@
-// RaveOS Plymouth boot splash script (installed system)
Window.SetBackgroundTopColor(0.102, 0.106, 0.114);
Window.SetBackgroundBottomColor(0.075, 0.078, 0.086);
@@ -6,7 +5,6 @@ Window.SetBackgroundBottomColor(0.075, 0.078, 0.086);
screen_width = Window.GetWidth();
screen_height = Window.GetHeight();
-// --- logo: owl icon, centered ---
owl_image = Image("raveos-owl.png");
owl_width = owl_image.GetWidth();
@@ -23,7 +21,6 @@ owl_x = screen_width / 2 - owl_width / 2;
owl_y = screen_height / 2 - owl_height / 2 - 20;
owl_sprite.SetPosition(owl_x, owl_y, 10);
-// --- status text: single static message ---
status_image = Image("status-installed.png");
status_scale = 0.5;
@@ -38,7 +35,6 @@ Plymouth.SetBootProgressFunction(fun(duration, progress)
{
});
-// --- password prompt (LUKS unlock) ---
fun display_password_callback(prompt, bullets)
{
diff --git a/plymouth-assets/raveos.script b/plymouth-assets/raveos.script
index 70ee581..e92e3c4 100644
--- a/plymouth-assets/raveos.script
+++ b/plymouth-assets/raveos.script
@@ -1,4 +1,3 @@
-// RaveOS Plymouth boot splash script (live install medium)
Window.SetBackgroundTopColor(0.102, 0.106, 0.114);
Window.SetBackgroundBottomColor(0.075, 0.078, 0.086);
@@ -6,7 +5,6 @@ Window.SetBackgroundBottomColor(0.075, 0.078, 0.086);
screen_width = Window.GetWidth();
screen_height = Window.GetHeight();
-// --- logo: owl icon, centered ---
owl_image = Image("raveos-owl.png");
owl_width = owl_image.GetWidth();
@@ -23,7 +21,6 @@ owl_x = screen_width / 2 - owl_width / 2;
owl_y = screen_height / 2 - owl_height / 2 - 20;
owl_sprite.SetPosition(owl_x, owl_y, 10);
-// --- status text: pre-rendered PNG cycling by boot progress ---
status_count = 6;
status_images[0] = Image("status-01.png");
@@ -40,7 +37,6 @@ status_y = owl_y + owl_height + 40;
seconds_per_stage = 1.2;
-// --- progress dots ---
dot_lit_image = Image("dot-lit.png");
dot_dim_image = Image("dot-dim.png");
@@ -86,16 +82,12 @@ fun update_status(index)
update_status(0);
-# "duration" a valos eltelt masodperc a boot ota - ez mindig pontos,
-# ellentetben a "progress" becslessel (ami elozo boot-idomeresre tamaszkodik,
-# es elso/friss elo boot-nal megbizhatatlan / gyakorlatilag 0-n ragad).
Plymouth.SetBootProgressFunction(fun(duration, progress)
{
index = Math.Int(duration / seconds_per_stage);
update_status(index);
});
-// --- password prompt (LUKS unlock) ---
fun display_password_callback(prompt, bullets)
{
diff --git a/releng/airootfs/etc/profile.d/raveos-fastfetch.sh b/releng/airootfs/etc/profile.d/raveos-fastfetch.sh
index 55460b8..e6324c7 100644
--- a/releng/airootfs/etc/profile.d/raveos-fastfetch.sh
+++ b/releng/airootfs/etc/profile.d/raveos-fastfetch.sh
@@ -1,6 +1,4 @@
#!/bin/bash
-# RaveOS terminal greeting
-# Guard: prevent double execution (login shell profile.d + .bashrc)
[[ -n "$_RAVEOS_GREETING_DONE" ]] && { return 2>/dev/null || exit 0; }
_RAVEOS_GREETING_DONE=1
diff --git a/releng/airootfs/etc/resolv.conf b/releng/airootfs/etc/resolv.conf
index 8dda3fc..3639662 100644..120000
--- a/releng/airootfs/etc/resolv.conf
+++ b/releng/airootfs/etc/resolv.conf
@@ -1 +1 @@
-nameserver 1.1.1.1
+/run/systemd/resolve/stub-resolv.conf \ No newline at end of file
diff --git a/releng/airootfs/etc/skel/.bashrc b/releng/airootfs/etc/skel/.bashrc
index 2d2fb5e..51de665 100644
--- a/releng/airootfs/etc/skel/.bashrc
+++ b/releng/airootfs/etc/skel/.bashrc
@@ -1,16 +1,10 @@
-#
-# ~/.bashrc
-#
-# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
alias grep='grep --color=auto'
PS1='[\u@\h \W]\$ '
-# >>> RaveOS terminal greeting >>>
if [[ -f /etc/profile.d/raveos-fastfetch.sh ]]; then
source /etc/profile.d/raveos-fastfetch.sh
fi
-# <<< RaveOS terminal greeting <<<
diff --git a/releng/airootfs/etc/systemd/network/20-wwan.network b/releng/airootfs/etc/systemd/network/20-wwan.network
deleted file mode 100644
index 6e1c8dd..0000000
--- a/releng/airootfs/etc/systemd/network/20-wwan.network
+++ /dev/null
@@ -1,19 +0,0 @@
-[Match]
-Name=ww*
-
-[Link]
-RequiredForOnline=routable
-
-[Network]
-DHCP=yes
-
-# systemd-networkd does not set per-interface-type default route metrics
-# https://github.com/systemd/systemd/issues/17698
-# Explicitly set route metric, so that Ethernet is preferred over Wi-Fi and Wi-Fi is preferred over mobile broadband.
-# Use values from NetworkManager. From nm_device_get_route_metric_default in
-# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c
-[DHCPv4]
-RouteMetric=700
-
-[IPv6AcceptRA]
-RouteMetric=700
diff --git a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-config.service b/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-config.service
deleted file mode 120000
index ebc50f0..0000000
--- a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-config.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/cloud-config.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-final.service b/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-final.service
deleted file mode 120000
index 80fa3c8..0000000
--- a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-final.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/cloud-final.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-local.service b/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-local.service
deleted file mode 120000
index dd8e9f1..0000000
--- a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-local.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/cloud-init-local.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-main.service b/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-main.service
deleted file mode 120000
index 875ff73..0000000
--- a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-main.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/cloud-init-main.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-network.service b/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-network.service
deleted file mode 120000
index ae77734..0000000
--- a/releng/airootfs/etc/systemd/system/cloud-init.target.wants/cloud-init-network.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/cloud-init-network.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.ModemManager1.service b/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.ModemManager1.service
deleted file mode 120000
index dcf7c8e..0000000
--- a/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.ModemManager1.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/ModemManager.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.network1.service b/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.network1.service
deleted file mode 120000
index 4c158e6..0000000
--- a/releng/airootfs/etc/systemd/system/dbus-org.freedesktop.network1.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/systemd-networkd.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/multi-user.target.wants/ModemManager.service b/releng/airootfs/etc/systemd/system/multi-user.target.wants/ModemManager.service
deleted file mode 120000
index dcf7c8e..0000000
--- a/releng/airootfs/etc/systemd/system/multi-user.target.wants/ModemManager.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/ModemManager.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_fcopy_daemon.service b/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_fcopy_daemon.service
deleted file mode 120000
index 20ac7b2..0000000
--- a/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_fcopy_daemon.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/hv_fcopy_daemon.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_kvp_daemon.service b/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_kvp_daemon.service
deleted file mode 120000
index a7eac4a..0000000
--- a/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_kvp_daemon.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/hv_kvp_daemon.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_vss_daemon.service b/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_vss_daemon.service
deleted file mode 120000
index eae19ef..0000000
--- a/releng/airootfs/etc/systemd/system/multi-user.target.wants/hv_vss_daemon.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/hv_vss_daemon.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/multi-user.target.wants/vboxservice.service b/releng/airootfs/etc/systemd/system/multi-user.target.wants/vboxservice.service
deleted file mode 120000
index cb2d560..0000000
--- a/releng/airootfs/etc/systemd/system/multi-user.target.wants/vboxservice.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/vboxservice.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/multi-user.target.wants/vmtoolsd.service b/releng/airootfs/etc/systemd/system/multi-user.target.wants/vmtoolsd.service
deleted file mode 120000
index e0a11a7..0000000
--- a/releng/airootfs/etc/systemd/system/multi-user.target.wants/vmtoolsd.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/vmtoolsd.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/multi-user.target.wants/vmware-vmblock-fuse.service b/releng/airootfs/etc/systemd/system/multi-user.target.wants/vmware-vmblock-fuse.service
deleted file mode 120000
index 173f306..0000000
--- a/releng/airootfs/etc/systemd/system/multi-user.target.wants/vmware-vmblock-fuse.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/vmware-vmblock-fuse.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service b/releng/airootfs/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
deleted file mode 120000
index 7d6ad92..0000000
--- a/releng/airootfs/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/systemd-networkd-wait-online.service \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/sockets.target.wants/pcscd.socket b/releng/airootfs/etc/systemd/system/sockets.target.wants/pcscd.socket
deleted file mode 120000
index 3897c63..0000000
--- a/releng/airootfs/etc/systemd/system/sockets.target.wants/pcscd.socket
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/pcscd.socket \ No newline at end of file
diff --git a/releng/airootfs/etc/systemd/system/sockets.target.wants/systemd-networkd.socket b/releng/airootfs/etc/systemd/system/sockets.target.wants/systemd-networkd.socket
deleted file mode 120000
index 51942c8..0000000
--- a/releng/airootfs/etc/systemd/system/sockets.target.wants/systemd-networkd.socket
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/systemd/system/systemd-networkd.socket \ No newline at end of file
diff --git a/releng/airootfs/usr/local/bin/livecd-sound b/releng/airootfs/usr/local/bin/livecd-sound
index b92fcf2..19a83ff 100755
--- a/releng/airootfs/usr/local/bin/livecd-sound
+++ b/releng/airootfs/usr/local/bin/livecd-sound
@@ -191,7 +191,7 @@ pick_a_card() {
exit 0
fi
systemd-cat -t "livecdsound" printf "multiple sound cards detected\n"
- for card in "${usable_cards[@]}"; do
+ for card in $usable_cards; do
if ! is_numeric "$card"; then
continue
fi
@@ -199,7 +199,7 @@ pick_a_card() {
done
wait
sleep 1
- for card in "${usable_cards[@]}"; do
+ for card in $usable_cards; do
if ! is_numeric "$card"; then
continue
fi
diff --git a/releng/airootfs/usr/local/share/livecd-sound/asound.conf.in b/releng/airootfs/usr/local/share/livecd-sound/asound.conf.in
index 3f9c7aa..b08b147 100644
--- a/releng/airootfs/usr/local/share/livecd-sound/asound.conf.in
+++ b/releng/airootfs/usr/local/share/livecd-sound/asound.conf.in
@@ -1,3 +1,2 @@
-Defaults node
defaults.ctl.card %card%;
defaults.pcm.card %card%;
diff --git a/releng/airootfs/usr/share/calamares/kernel-install/95-raveos.install b/releng/airootfs/usr/share/calamares/kernel-install/95-raveos.install
index 94b4330..c4ffaa5 100755
--- a/releng/airootfs/usr/share/calamares/kernel-install/95-raveos.install
+++ b/releng/airootfs/usr/share/calamares/kernel-install/95-raveos.install
@@ -1,12 +1,10 @@
#!/bin/bash
-# Single-entry, systemd-compliant kernel-install hook for CachyOS
set -e
COMMAND="$1" # add | remove
KERNEL_VERSION="$2" # e.g. 6.18.4-1-cachyos
-# Only act on CachyOS kernels
case "$KERNEL_VERSION" in
*cachyos*) ;;
*) exit 0 ;;
@@ -16,13 +14,9 @@ BOOT_ROOT="${KERNEL_INSTALL_BOOT_ROOT:-/boot}"
ENTRY_DIR="$BOOT_ROOT/loader/entries"
ENTRY_FILE="$ENTRY_DIR/raveos.conf"
-# --------------------------------------------------
-# Fixed CachyOS kernel paths (non-versioned)
-# --------------------------------------------------
LINUX_IMAGE="/vmlinuz-linux-cachyos"
INITRAMFS_IMAGE="/initramfs-linux-cachyos.img"
-# CPU Microcode detection (Intel vs AMD)
MICROCODE=""
CPU_VENDOR="$(grep -m1 'vendor_id' /proc/cpuinfo 2>/dev/null | awk '{print $3}' || true)"
if [ "$CPU_VENDOR" = "GenuineIntel" ] && [ -f "$BOOT_ROOT/intel-ucode.img" ]; then
@@ -34,9 +28,6 @@ else
[ -f "$BOOT_ROOT/amd-ucode.img" ] && MICROCODE="/amd-ucode.img"
fi
-# Root device detection with fallback.
-# findmnt prints btrfs mounts as "/dev/vda2[/@]" (device plus subvolume),
-# which is not a valid device node for blkid/mount -- strip the bracket part.
ROOT_SRC="$(findmnt -no SOURCE / | sed 's/\[.*\]//' || true)"
ROOT_FS="$(findmnt -no FSTYPE / || true)"
ROOT_OPTS="$(findmnt -no OPTIONS / || true)"
@@ -62,9 +53,10 @@ esac
OPTIONS="rw quiet splash"
-# LUKS Encryption & Root Device Fallbacks
if [[ "$ROOT_SRC" == /dev/mapper/* ]]; then
- UUID="$(blkid -s UUID -o value "$ROOT_SRC" || true)"
+ PARENT_NAME="$(lsblk -no pkname "$ROOT_SRC" 2>/dev/null | head -n1)"
+ UUID=""
+ [ -n "$PARENT_NAME" ] && UUID="$(blkid -s UUID -o value "/dev/$PARENT_NAME" 2>/dev/null || true)"
if [ -n "$UUID" ]; then
OPTIONS="cryptdevice=UUID=$UUID:cryptroot root=/dev/mapper/cryptroot $OPTIONS"
else
@@ -84,9 +76,6 @@ else
fi
fi
-# --------------------------------------------------
-# Btrfs subvolume support
-# --------------------------------------------------
if [ "$ROOT_FS" = "btrfs" ]; then
SUBVOL="$(echo "$ROOT_OPTS" | tr ',' '\n' | grep '^subvol=' || true)"
[ -n "$SUBVOL" ] && OPTIONS="$OPTIONS rootflags=$SUBVOL"
@@ -106,7 +95,6 @@ case "$COMMAND" in
;;
remove)
- # Only remove entry if this was the last CachyOS kernel
rm -f "$ENTRY_FILE"
;;
diff --git a/releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script b/releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script
index 70ee581..e92e3c4 100644
--- a/releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script
+++ b/releng/airootfs/usr/share/plymouth/themes/raveos/raveos.script
@@ -1,4 +1,3 @@
-// RaveOS Plymouth boot splash script (live install medium)
Window.SetBackgroundTopColor(0.102, 0.106, 0.114);
Window.SetBackgroundBottomColor(0.075, 0.078, 0.086);
@@ -6,7 +5,6 @@ Window.SetBackgroundBottomColor(0.075, 0.078, 0.086);
screen_width = Window.GetWidth();
screen_height = Window.GetHeight();
-// --- logo: owl icon, centered ---
owl_image = Image("raveos-owl.png");
owl_width = owl_image.GetWidth();
@@ -23,7 +21,6 @@ owl_x = screen_width / 2 - owl_width / 2;
owl_y = screen_height / 2 - owl_height / 2 - 20;
owl_sprite.SetPosition(owl_x, owl_y, 10);
-// --- status text: pre-rendered PNG cycling by boot progress ---
status_count = 6;
status_images[0] = Image("status-01.png");
@@ -40,7 +37,6 @@ status_y = owl_y + owl_height + 40;
seconds_per_stage = 1.2;
-// --- progress dots ---
dot_lit_image = Image("dot-lit.png");
dot_dim_image = Image("dot-dim.png");
@@ -86,16 +82,12 @@ fun update_status(index)
update_status(0);
-# "duration" a valos eltelt masodperc a boot ota - ez mindig pontos,
-# ellentetben a "progress" becslessel (ami elozo boot-idomeresre tamaszkodik,
-# es elso/friss elo boot-nal megbizhatatlan / gyakorlatilag 0-n ragad).
Plymouth.SetBootProgressFunction(fun(duration, progress)
{
index = Math.Int(duration / seconds_per_stage);
update_status(index);
});
-// --- password prompt (LUKS unlock) ---
fun display_password_callback(prompt, bullets)
{
diff --git a/releng/efiboot/loader/entries/02-archiso-linux-nomodeset.conf b/releng/efiboot/loader/entries/02-archiso-linux-nomodeset.conf
new file mode 100644
index 0000000..344eca3
--- /dev/null
+++ b/releng/efiboot/loader/entries/02-archiso-linux-nomodeset.conf
@@ -0,0 +1,5 @@
+title RaveOS install medium (%ARCH%, UEFI, nomodeset)
+sort-key 02
+linux /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
+initrd /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
+options archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% cow_spacesize=75% copytoram=n quiet splash nomodeset
diff --git a/releng/packages.x86_64 b/releng/packages.x86_64
index 1bac919..0ab48fc 100644
--- a/releng/packages.x86_64
+++ b/releng/packages.x86_64
@@ -30,6 +30,8 @@ linux-firmware-intel
linux-firmware-marvell
linux-firmware-mediatek
linux-firmware-qcom
+intel-ucode
+amd-ucode
lsb-release
lvm2
man-db
diff --git a/releng/profiledef.sh b/releng/profiledef.sh
index 230e1d9..f56a2f4 100644
--- a/releng/profiledef.sh
+++ b/releng/profiledef.sh
@@ -12,10 +12,11 @@ bootmodes=('bios.syslinux'
'uefi.systemd-boot')
pacman_conf="pacman.conf"
airootfs_image_type="squashfs"
-airootfs_image_tool_options=('-comp' 'xz' '-Xbcj' 'x86' '-b' '1M' '-Xdict-size' '1M')
+airootfs_image_tool_options=('-comp' 'zstd' '-Xcompression-level' '15')
bootstrap_tarball_compression=('zstd' '-c' '-T0' '--auto-threads=logical' '--long' '-19')
file_permissions=(
["/etc/shadow"]="0:0:400"
+ ["/etc/sudoers"]="0:0:440"
["/etc/gshadow"]="0:0:400"
["/root"]="0:0:750"
["/root/.gnupg"]="0:0:700"
@@ -26,7 +27,7 @@ file_permissions=(
["/etc/pacman.d/chaotic-mirrorlist"]="0:0:644"
["/etc/pacman.d/mirrorlist"]="0:0:644"
["/etc/pacman.d/hooks/reflector-mirrorlist.hook"]="0:0:644"
- ["/etc/group"]="0:0:400"
+ ["/etc/group"]="0:0:644"
["/root/.config/openbox/autostart"]="0:0:755"
["/etc/profile.d/autostart.sh"]="0:0:755"
["/usr/share/calamares/kernel-install/95-raveos.install"]="0:0:755"
diff --git a/releng/syslinux/archiso_sys-linux.cfg b/releng/syslinux/archiso_sys-linux.cfg
index 5615abd..98615d2 100644
--- a/releng/syslinux/archiso_sys-linux.cfg
+++ b/releng/syslinux/archiso_sys-linux.cfg
@@ -1,20 +1,29 @@
LABEL arch
TEXT HELP
-Boot the Arch Linux install medium on BIOS.
-It allows you to install Arch Linux or perform system maintenance.
+Boot the RaveOS install medium on BIOS.
+It allows you to install RaveOS or perform system maintenance.
ENDTEXT
-MENU LABEL Arch Linux install medium (%ARCH%, BIOS)
+MENU LABEL RaveOS install medium (%ARCH%, BIOS)
LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
INITRD /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% quiet splash
-# Accessibility boot option
+LABEL archnomodeset
+TEXT HELP
+Boot the RaveOS install medium on BIOS with nomodeset.
+Use this if the installer shows a black screen.
+ENDTEXT
+MENU LABEL RaveOS install medium (%ARCH%, BIOS, ^nomodeset)
+LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
+INITRD /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
+APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% quiet splash nomodeset
+
LABEL archspeech
TEXT HELP
-Boot the Arch Linux install medium on BIOS with speakup screen reader.
-It allows you to install Arch Linux or perform system maintenance with speech feedback.
+Boot the RaveOS install medium on BIOS with speakup screen reader.
+It allows you to install RaveOS or perform system maintenance with speech feedback.
ENDTEXT
-MENU LABEL Arch Linux install medium (%ARCH%, BIOS) with ^speech
+MENU LABEL RaveOS install medium (%ARCH%, BIOS) with ^speech
LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
INITRD /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% accessibility=on