MoonLightOS

Ubuntu-alap, Ubuntu-asztal nélkül

A Linux-alapok közül az Ubuntu kínálja a legnagyobb csomagtárolót és a legszélesebb hardvertámogatást. Már a linux-firmware csomag is lefedi a használatban lévő Wi-Fi-, Bluetooth-, GPU- és lapkakészlet-hardverek túlnyomó többségét, az ubuntu-drivers-common pedig rendben elbánik az NVIDIA-kártyákkal. A Secure Boot azért működik azonnal, mert a Canonical aláírt shimje és GRUB-ja benne van a tárolóban, a kernel pedig aláírt. Az alap ráadásul tizenkét évig kap biztonsági támogatást.

Az Ubuntu asztali környezete az, amit érdemes volt lecserélni: nehézkes, és nincs rajta sem Start gomb, sem asztali ikon, sem tálca. A Cinnamonban mindhárom megvan. A MoonLightOS ezért minimális alapról indul, és arra építi fel az asztalt. Az Ubuntu saját asztali környezetéből semmi nem telepszik fel, és a felhasználó által látott felületeken semmi nem utal az alapra.

Egy dolog szándékosan változatlan: az apt által látott kiadási kódnév marad „resolute”, mert a PPA-k és minden, ami az lsb_release-t hívja, erre épít. Az arculat, amelyet a felhasználó valóban lát, az /etc/os-release fájlból jön.

Képernyőkép a MoonLightOS-ről
A logó nem mozdul, körülötte lélegzik a fény. Két halóréteg 2,6 és 3,1 másodperces ciklussal úszik ki-be, és mivel a két ütem elcsúszik egymáshoz képest, a derengés sosem tűnik gépiesnek. Mindkettő a forrásgrafikából készül a build során, és ugyanez a logó és haló jelenik meg a GRUB menüjében, a bejelentkezési képernyőn, a telepítőben, a névjegyben és az Üdvözlet bemutatójában.

A megjelenés

Egyetlen, 52 pixel magas panel alul. Balra a Start gomb és a keresőmező, középen a futó alkalmazások a panel legnagyobb ikonjaival, jobbra az állapotterület. A menüben ott a saját képe, a neve, és az is, hogy rendszergazdai joga van-e a gépen; a keresőmezője pedig alkalmazásokat, beállításokat, fájlokat és webes találatokat is megtalál.

Képernyőkép a MoonLightOS-ről
A képernyőkép a telepített rendszer valódi indításakor készült, nem látványterv.

Három elrendezés

  • MoonLight

    Egyetlen panel alul. A dokkban a kedvenc alkalmazások is elférnek, így nincs szükség külön indítósorra.

  • Két panel

    Fent keskeny sáv az órának és az állapotjelzőknek, alul magától elrejtőző dokk.

  • Kompakt

    Egyetlen keskeny sáv fent. Ez foglalja a legkevesebb helyet, és régi videokártyán ez a legkíméletesebb.

Világos és sötét

Mindkét témát egyetlen szkript állítja elő egyetlen színpalettából, a GTK 2-re, 3-ra és 4-re, a Cinnamon felületére és az ablakszegélyekre egyaránt. A GTK-témák az Adwaitát importálják és átszínezik, így az új felületi elemek és a felsőbb szintű javítások maguktól megérkeznek. Az ikontéma a Papirusra épül, és csak azokat az ikonokat váltja le, amelyek a disztribúciót azonosítják. A kiemelőszín az Asztal és dokk lapon változtatható.

Időzített váltás

Alapértelmezés szerint 7:00-tól világos, 19:00-tól sötét. Egy kis háttérszolgáltatás gondoskodik róla, hogy a téma kövesse az időrendet.

Asztali kisalkalmazások

Alapértelmezés szerint egy nagy óra, valamint processzor-, memória- és lemezfigyelő látszik. Jobb gombbal naptár és öntapadós jegyzet is kitehető; a jegyzet írás közben, egyszerű szövegként mentődik.

Az indítási animáció

A logó nem mozdul, körülötte lélegzik a fény. Két halóréteg 2,6 és 3,1 másodperces ciklussal úszik ki-be, és mivel a két ütem elcsúszik egymáshoz képest, a derengés sosem tűnik gépiesnek. Mindkettő a forrásgrafikából készül a build során, és ugyanez a logó és haló jelenik meg a GRUB menüjében, a bejelentkezési képernyőn, a telepítőben, a névjegyben és az Üdvözlet bemutatójában.

Tipográfia

A felületen Inter, a kódban JetBrains Mono, minden máshoz Noto, beleértve a kínai, a japán és a koreai írást, valamint a színes emodzsikat.

Hét háttérkép

Öt fényképes jelenet pingvinnel, tóval és holdsarlóval, mellettük egy generált nappali-éjszakai pár. A kiadás a „Naplemente a tó fölött” képpel indul.

Gyorsbillentyűk, amelyeket már ismer

A Windows és a macOS szinte mindenre más gyorsbillentyűt használ. Mivel a két készlet jóformán soha nem ütközik, a MoonLightOS mindkettőt ismeri: a Super gomb a windowsos, a Control gomb a macOS-es megszokást követi.

MűveletWindows szerintmacOS szerint
A menü megnyitásaSuperSuper
KeresésSuper+SzóközSuper+Szóköz
FájlokSuper+E—
A képernyő zárolásaSuper+LCtrl+Super+Q
Az asztal megjelenítéseSuper+DCtrl+Super+D
Ablak igazítása a képernyő feléhezSuper+Balra / Jobbra—
Teljes méret / visszaállításSuper+Fel / Super+LeAlt+F10 / Alt+F5
Kis méretSuper+HAlt+F9
Ablak bezárásaAlt+F4Super+Q
Teljes képernyőSuper+FCtrl+Super+F
Váltás az ablakok közöttAlt+Tab, Super+TabAlt+Tab
Az alkalmazás következő ablakaAlt+`Super+`
Minden ablakSuper+WCtrl+Fel
Minden munkaterületSuper+SCtrl+Le
Munkaterület-váltásCtrl+Alt+Balra / JobbraCtrl+Balra / Jobbra
Ablak átvitele másik munkaterületreCtrl+Shift+Alt+Balra / JobbraCtrl+Shift+Balra / Jobbra
BeállításokSuper+ISuper+,
RendszerfigyelőCtrl+Shift+Esc—
Parancs futtatásaSuper+R, Alt+F2—
TerminálCtrl+Alt+TCtrl+Alt+T
BöngészőSuper+BSuper+B
SzámológépSuper+CSuper+C
Keverő és hangszínszabályzóSuper+ASuper+A
VágólaptörténetSuper+VSuper+V
JegyzetekSuper+NSuper+N
Fájlok átalakításaSuper+Shift+CSuper+Shift+C
Képernyőkép a teljes képernyőrőlPrintShift+Super+3
Képernyőkép egy területrőlShift+PrintShift+Super+4
Képernyőkép egy ablakrólAlt+Print—
Képernyőkép- és felvételi panelCtrl+Shift+PrintShift+Super+5
KijelentkezésCtrl+Alt+Delete—

Ha a mutatót a bal felső sarokba viszi, megnyílik az ablakáttekintő. A Super gomb egymagában a menüt hozza elő, a Super+Szóköz pedig úgy nyitja meg, hogy a kurzor már a keresőmezőben van.

Három csomagformátum, egy áruház

Az apt, a snap és a Flatpak mind telepítve van, a GNOME Szoftverek pedig mindhármat listázza: elöl a snapek, utána az Ubuntu tárolójának csomagjai, majd a Flathub. A .deb csomag mindig a legkönnyebb választás, a Flathub pedig lefedi a többit.

A Snap Store alkalmazás maga is snap, amelynek a függőségei körülbelül egy gigabájtot tesznek ki: ez túl sok egy olyan lemezképhez, amely 2 GB memóriás gépekre készült. Az áruház ezért az első indítástól listázza és telepíti a snapeket, magát a Snap Store alkalmazást pedig egy szolgáltatás letölti, amint van hálózat.

Az Alkalmazások beállítási lap megmutatja, mi van telepítve, a három formátum közül melyikből jött az adott alkalmazás, és azt is, ha valami kétszer van fent.

A lemezképen lévő alkalmazások

Úgy választottuk ki őket, hogy egy általános célú asztali gép az első indítástól működjön, internet nélkül is.

Internet

Firefox (a Mozilla saját buildje, benne az uBlock Origin helyi kiegészítőként, hogy internet nélkül is kéznél legyen), Thunderbird, Geary, Transmission

Iroda és dokumentumok

LibreOffice Writer, Calc, Impress és Draw; Evince; GNOME Szövegszerkesztő; Xournal++; PDF Arranger; MoonLight PDF; Naptár; Órák; Időjárás; Térképek; Számológép

Média

VLC; Celluloid; Rhythmbox; GStreamer a libavval, a „bad” és az „ugly” bővítménykészlettel és a VA-API-val, így a H.264, a H.265 és az AAC minden alkalmazásban szól

Grafika és lapolvasás

GIMP; Rajzolás; Eye of GNOME; MoonLight Export; Simple Scan; Betűkészlet-megjelenítő; Képernyőkép

Rendszer

GNOME Szoftverek; Rendszerfigyelő; Lemezek; GParted; Lemezhasználat-elemző; Timeshift; Redshift; Archívumkezelő; Seahorse; Blueman; Nyomtatók; MoonLight Tweaks

Hálózat és VPN

NetworkManager OpenVPN-nel, OpenConnecttel (Cisco AnyConnect, GlobalProtect, Fortinet), L2TP-vel, PPTP-vel, SSH-val és beépített WireGuard-támogatással

Fejlesztés

Visual Studio Code; gcc, g++, make, gdb; git, git-lfs; cmake, meson, ninja; Python 3 pippel, venvvel, NumPy-jal és OpenCV-vel; Node.js és npm; Rust és Cargo; Go; OpenJDK 21 Mavennel és Gradle-lel; Docker Engine, Compose v2 és Buildx; SQLite

Terminál

GNOME Terminál; bash, zsh és fish; tmux, screen; Neovim, nano; ripgrep, fd, jq, yq, htop, btop, ncdu, tree; nmap, dig, whois, traceroute, httpie, socat; rsync, rclone, aria2; shellcheck; inxi, fastfetch

Windows-kompatibilitás

Wine 32 bites támogatással, winetricks, DXVK (Direct3D 9-től 11-ig) és VKD3D (Direct3D 12)

Hardver és illesztőprogramok

Firmware

A teljes linux-firmware készlet, az Intel és az AMD mikrokódja, valamint az fwupd a firmware-frissítésekhez.

Grafika

Mesa Vulkannal, VA-API-val és VDPAU-val, Intelhez és AMD-hez. Az NVIDIA illesztőprogramja rajta van az ISO-n, így internet nélkül is bekapcsolható az Illesztőprogramok lapon.

Wi-Fi és vezetékes hálózat

Több mint ötven vezeték nélküli illesztőprogram a kernelben, mellettük a broadcom-sta és az r8168 DKMS-sel fordítva azokhoz a lapkákhoz, amelyekkel a szokásos illesztőprogramok nehezen bánnak.

Nyomtatók és lapolvasók

CUPS a teljes illesztőprogram-készlettel, nyomtatás PDF-be, SANE és Simple Scan.

Bluetooth

BlueZ, Blueman és a PipeWire Bluetooth-kodekjei, mellettük olyan beállítási lap, amely világosan megmondja, ha a gépben nincs Bluetooth.

Hang

PipeWire WirePlumberrel, PulseAudio-kompatibilitással és beépített tízsávos hangszínszabályzóval.

Laptopok

power-profiles-daemon, thermald, az akkumulátor töltöttsége a panelen, gyárilag bekapcsolt koppintásos kattintás és természetes görgetés, Wacom- és Synaptics-támogatás.

Virtuális gépek

A VirtualBox, a QEMU/SPICE és a VMware vendégeszközei is fent vannak, így a kijelző átméretezhető, a vágólap pedig közös.

Ujjlenyomat-olvasók

Az fprintd, a libfprint és a TOD-betöltő telepítve van, és a PAM-ba is be van kötve. Az Ujjlenyomat felismeri az érzékelőt, és végigvezeti a rögzítésen.

Arcfelismeréses feloldás

OpenCV-re épülő arcfelismerés a bejelentkezési képernyőn, a zárolási képernyőn, valamint a sudo jelszókérésénél. Kikapcsolva marad, amíg be nem kapcsolja.

Biztonság

Az alábbiak mind be vannak kapcsolva egy telepített MoonLightOS rendszeren.

  • Secure Boot

    Firmware → a Canonical shimje → aláírt GRUB → aláírt kernel. A Beállítások → Névjegy lapon látszik, hogy az Ön gépén be van-e kapcsolva.

  • Lemeztitkosítás

    A teljes lemezes LUKS2-titkosítás egyetlen jelölőnégyzet a telepítőben.

  • Tűzfal

    Az ufw be van kapcsolva: a bejövő kapcsolatokat tiltja, a kimenőket engedi.

  • AppArmor

    Kényszerítő mód, a snapekre is.

  • Automatikus biztonsági frissítések

    Naponta, az Ubuntu biztonsági tárolójából és a packages.mozilla.org címről. A fölöslegessé vált kernelek és függőségek törlődnek, a gép pedig soha nem indul újra magától.

  • Zárolt root fiók, nyomon követhető sudo

    Az első felhasználói fiók a sudo parancson keresztül rendszergazda. Root jelszó egyáltalán nem készül.

  • Jelszóerősség és zárolás

    Legalább nyolc karakter, kétféle karakterosztályból. Nyolc rossz próbálkozás után a fiók tizenöt percre zárolódik.

  • Kernelkeményítés

    A rendszermag úgy van beállítva, hogy a jogosultság nélküli programok a lehető legkevesebbet tudják meg a rendszerről és egymásról: a rendszermag mutatói és az indítási üzenetek rejtve maradnak, más folyamat hibakeresése tiltott, és futás közben nem tölthető be csereprogram a rendszermag helyére. A hálózati réteg meg van erősítve a hamisított útvonalak és a kapcsolatáradatok ellen, az IPv6-címek pedig rendszeresen cserélődnek.

  • Kisebb támadási felület

    A FireWire és a ritkán szükséges fájlrendszer- és hálózatiprotokoll-modulok egy csoportja nem tölthető be automatikusan, így egy csatlakoztatott eszköz vagy egy beérkező csomag nem húzhat be olyan kódot, amelyet ez a gép soha nem használ.

  • Egyedi az első indításkor

    A gépazonosító és az SSH-gazdakulcsok a telepített gépen jönnek létre. Ha minden telepítés ugyanazt a gazdakulcsot kapná, a gazdagép-ellenőrzésnek nem lenne értelme.

  • Nincs telemetria

    A hibajelentő és használatstatisztikai szolgáltatások nincsenek rajta a lemezképen. A Firefox telemetriája, kísérletei, a Pocket és a támogatott tartalom házirenddel ki van kapcsolva, a követésvédelem pedig be van kapcsolva.

  • USB-védelem

    Telepítve van az USBGuard, így a zárolt képernyő mellett bedugott eszköz nem kap bizalmat. Alapból kikapcsolva; a Biztonság lapon egy gomb bekapcsolja.

  • Vészhelyzeti jelszó

    Egy második jelszó, amely nem bejelentkezésre szolgál. A törlő mód elpusztítja a lemez LUKS-kulcsait, és kikapcsolja a gépet; a megtévesztő mód üres munkamenetet nyit, és öt perc után megfagyasztja. Alapból kikapcsolva, a beállításához a valódi jelszó kell, és nem lehet ugyanaz, mint a valódi.

  • A rendszerindító menü jelszava

    A Biztonság lapon felajánlja a rendszer, mert aki újra tudja indítani a gépet, az egyébként átírhatná az indítómenüt, és root shellt nyithatna.

  • Áttekinthető jelszókérések

    Minden MoonLight segédprogramhoz névvel ellátott polkit-művelet tartozik, így a jelszókérésből kiderül, mihez adja a hozzájárulását.

Képernyőkép a MoonLightOS-ről
A képernyőkép a telepített rendszer valódi indításakor készült, nem látványterv.

Működés kevés memóriával

Tömörített memória (zram)A memória fele, legfeljebb 8 GB, zstd tömörítés, 100-as prioritás. Az asztali memóriaoldalakon nagyjából 3:1 a tömörítés.
A lapozás hangolásaA kernel 60-as alapértéke abból indul ki, hogy a kilapozás lemezművelet. A zram mellett viszont csak memóriamásolás.
Védelem a memória elfogyása ellen4% szabad memóriánál lép, 2%-nál SIGKILL-t küld. A Cinnamont, az Xorgot, a LightDM-et és a Nemót soha nem állítja le; elsőként a Firefoxot, a Thunderbirdöt, a Code-ot, a LibreOffice-t és a fordítókat zárja be.
Nincs indexelőNincs tracker, és nincs háttérben futó lemezpásztázás.
Automatikus grafikai hangolásBejelentkezéskor a rendszer megnézi az OpenGL-megjelenítőt. Ha az llvmpipe vagy más szoftveres megjelenítő, kikapcsolja az animációkat. Ha később Ön másként dönt, azt soha nem írja felül.
GRUBSzerény grafikus módot kér, tartalékokkal, így a menü kevés videómemóriás virtuális gépen is megjelenik.
Squashfszstd-vel tömörítve, így a live munkamenet gyorsan betöltődik pendrive-ról.

Nyelvek

Az első indítás varázslója rövid listán kínálja az angolt (amerikai és brit), az olaszt, a franciát, a németet, a spanyolt, a brazil portugált, a hollandot, a lengyelt és az oroszt, a többi területi beállítás pedig a „További nyelvek” alatt van. A billentyűzetkiosztás követi a választott nyelvet, így a második lépésnél legtöbbször elég a Tovább gombra kattintani.

Az összes MoonTools, összesen 774 szöveg, az angolon kívül ezen a nyolc nyelven is megvan, és a build elbukik, ha egy programban akad olyan látható szöveg, amely nincs lefordítva. Az olasz nyelvi csomag és a LibreOffice szótárai rajta vannak a lemezképen, így egy olaszországi, internet nélküli telepítés is teljesen honosított; a többi nyelvi csomag egyetlen kattintással letölthető.

A parancssori eszközök szándékosan angolul maradnak: a kimenetüket a dokumentáció mellett olvassa az ember, és hibajelentésbe illeszti be, ez pedig egy nyelven egyszerűbb.

Képernyőkép a MoonLightOS-ről

Döntések, amelyekről érdemes tudni

  • A GTK-témák az Adwaitát importálják és átszínezik.

    A kézzel írt téma minden alkalommal eltörik, amikor a GTK új felületi elemet kap. Ez viszont örökli a felsőbb szintű javításokat.

  • A Cinnamon Rendszerinformáció lapja nem törlődik, csak félre van terelve.

    Így egy Cinnamon-frissítés nem tudja csendben visszahozni a miénk mellé, a MoonLightOS-csomagok eltávolítása pedig rendesen visszaadja.

  • A squashfs saját kernelpéldányt tartalmaz.

    Ugyanezt a squashfs-t másolja a telepítő a lemezre. Ha a /boot kimaradna belőle, olyan rendszer kerülne fel, amely nem indul el.

  • Az indítási téma neve moonlightos, nem moonlight.

    A Debian desktop-base csomagja már hoz egy moonlight nevű Plymouth-témát, és egy frissítés csendben lecserélné az animációt.

  • Az uBlock Origin a lemezképen van, nem letöltve jön.

    Az addons.mozilla.org címre mutató szabályzat csak akkor telepíti a kiegészítőt, amikor a Firefox először működő hálózattal indul. Így a kiegészítő a lemezképre került, és persze el is távolítható.

  • Docker Engine, nem Docker Desktop.

    Linuxon a Docker Desktop saját virtuális gépben futtatja a motort, ami egy laptopon második kernelt és második memóriakeretet jelent.

  • A nagy fejlesztői készletek választhatók.

    A virtuális gépek, a PHP adatbázisokkal és a LaTeX egyetlen kattintás az Üdvözletben, így nem kell minden telepítésnek egy gigabájtot hordoznia.