MoonLightOS

Ubuntus grund, utan Ubuntus skrivbord

Ubuntu har det största paketarkivet och det bredaste hårdvarustödet av alla Linuxgrunder. Bara paketet linux-firmware täcker den stora majoriteten av de kretsar för wifi, Bluetooth, grafik och chipset som används i dag, och ubuntu-drivers-common sköter NVIDIA-kort ordentligt. Secure Boot fungerar direkt, eftersom Canonicals signerade shim och GRUB finns i arkivet och kärnan är signerad. Grunden får dessutom tolv år av säkerhetsunderhåll.

Ubuntus skrivbord var däremot värt att byta ut: det är tungt, och det har varken startknapp, ikoner på skrivbordet eller aktivitetsfält. Cinnamon har alla tre. Därför utgår MoonLightOS från en minimal grund och bygger skrivbordet ovanpå den. Inget av Ubuntus eget skrivbord installeras, och i det du ser nämns grunden aldrig.

En sak är medvetet orörd: kodnamnet som apt ser är fortfarande ”resolute”, eftersom PPA:er och allt som anropar lsb_release är beroende av det. Det som faktiskt visas för dig hämtas i stället ur /etc/os-release.

Skärmbild av MoonLightOS
Logotypen står still medan ljuset runt den pulserar. Två halobilder med cykler på 2,6 och 3,1 sekunder glider in och ur fas, så skenet ser aldrig mekaniskt ut. Båda genereras ur källgrafiken när avbilden byggs, och samma logotyp och halo återkommer i GRUB-menyn, på inloggningsskärmen, i installationsprogrammet, på sidan Om och i rundturen i Välkommen.

Utseendet

En enda panel längst ner, 52 pixlar hög. Till vänster ligger startknappen och sökfältet, i mitten programmen som är igång med panelens största ikoner, och till höger statusfältet. Menyn visar din bild, ditt namn och om du får administrera datorn, och sökfältet i menyn hittar program, inställningar, filer och träffar från nätet.

Skärmbild av MoonLightOS
Skärmbilden är tagen vid en verklig start av den installerade avbilden. Inget montage.

Tre layouter

  • MoonLight

    En enda panel längst ner. I dockan ligger också dina favoritprogram, så det behövs ingen extra rad med genvägar.

  • Två paneler

    En smal rad högst upp för klockan och statusikonerna, och en docka längst ner som döljer sig automatiskt.

  • Kompakt

    En enda smal rad högst upp. Den tar minst plats på skärmen och är det lättaste alternativet på gammal grafikhårdvara.

Ljust och mörkt

Båda temana genereras av ett och samma skript ur en enda färgpalett, och de täcker GTK 2, 3 och 4, Cinnamon-skalet och fönsterramarna. GTK-temana importerar Adwaita och färgar om det, så nya komponenter och rättningar uppströms kommer med automatiskt. Ikontemat bygger på Papirus och byter bara ut de ikoner som hör till distributionen. Accentfärgen ändrar du i Skrivbord och docka.

Schemalagt byte

Som standard ljust från 07.00 och mörkt från 19.00. En liten bakgrundstjänst håller temat i takt med schemat.

Widgetar på skrivbordet

Som standard visas en stor klocka och en mätare för processor, minne och disk. Med ett högerklick lägger du till en kalender och gula lappar som sparas som vanlig text medan du skriver.

Startanimationen

Logotypen står still medan ljuset runt den pulserar. Två halobilder med cykler på 2,6 och 3,1 sekunder glider in och ur fas, så skenet ser aldrig mekaniskt ut. Båda genereras ur källgrafiken när avbilden byggs, och samma logotyp och halo återkommer i GRUB-menyn, på inloggningsskärmen, i installationsprogrammet, på sidan Om och i rundturen i Välkommen.

Typografi

Inter i gränssnittet, JetBrains Mono för kod och Noto för allt annat, inklusive kinesiska, japanska, koreanska och emoji i färg.

Sju skrivbordsbakgrunder

Fem fotograferade motiv med en pingvin, en sjö och en månskära, plus ett genererat par för dag och natt. I den här utgåvan är ”Solnedgång över sjön” förvald.

Genvägar du redan kan

Windows och macOS använder olika tangentbordsgenvägar för nästan allt. Eftersom de två uppsättningarna nästan aldrig krockar stöder MoonLightOS båda: Super-tangenten följer vanorna från Windows och Ctrl-tangenten vanorna från Mac.

ÅtgärdFrån WindowsFrån macOS
Öppna menynSuperSuper
SökSuper+MellanslagSuper+Mellanslag
FilerSuper+E—
Lås skärmenSuper+LCtrl+Super+Q
Visa skrivbordetSuper+DCtrl+Super+D
Lägg ett fönster på halva skärmenSuper+Vänster / Höger—
Maximera eller återställSuper+Upp / Super+NedAlt+F10 / Alt+F5
MinimeraSuper+HAlt+F9
Stäng fönstretAlt+F4Super+Q
HelskärmSuper+FCtrl+Super+F
Växla mellan fönsterAlt+Tab, Super+TabAlt+Tab
Nästa fönster i samma programAlt+`Super+`
Alla fönsterSuper+WCtrl+Upp
Alla skrivbordSuper+SCtrl+Ned
Byt skrivbordCtrl+Alt+Vänster / HögerCtrl+Vänster / Höger
Flytta fönstret till ett annat skrivbordCtrl+Shift+Alt+Vänster / HögerCtrl+Shift+Vänster / Höger
InställningarSuper+ISuper+,
SystemövervakarenCtrl+Shift+Esc—
Kör ett kommandoSuper+R, Alt+F2—
TerminalenCtrl+Alt+TCtrl+Alt+T
WebbläsarenSuper+BSuper+B
KalkylatornSuper+CSuper+C
Mixer och equalizerSuper+ASuper+A
UrklippshistorikenSuper+VSuper+V
AnteckningarSuper+NSuper+N
Omvandla filerSuper+Shift+CSuper+Shift+C
Skärmbild av hela skärmenPrintShift+Super+3
Skärmbild av ett områdeShift+PrintShift+Super+4
Skärmbild av ett fönsterAlt+Print—
Panelen för skärmbild och inspelningCtrl+Shift+PrintShift+Super+5
Logga utCtrl+Alt+Delete—

För du pekaren till det övre vänstra hörnet öppnas fönsteröversikten. Super-tangenten ensam öppnar menyn, och Super+Mellanslag öppnar den med markören redan i sökfältet.

Tre paketformat, en butik

apt, snap och Flatpak är installerade allihop, och GNOME Software listar alla tre: snappaket först, sedan paket ur Ubuntus arkiv och sist Flathub. Ett .deb-paket är alltid det lättaste alternativet, och Flathub täcker resten.

Programmet Snap Store är självt ett snappaket vars beroenden landar på omkring en gigabyte, för mycket för en avbild som är tänkt för datorer med 2 GB RAM. Butiken kan därför visa och installera snappaket redan från första starten, och en tjänst hämtar själva Snap Store-programmet så snart det finns en anslutning.

Inställningssidan Program visar vad som är installerat, vilket av de tre formaten varje program kom från och om något är installerat två gånger.

Program på avbilden

Urvalet är gjort så att ett vanligt skrivbord fungerar från första starten, även utan uppkoppling.

Internet

Firefox (Mozillas eget bygge, med uBlock Origin inlagt som lokalt tillägg så att det finns även utan uppkoppling), Thunderbird, Geary, Transmission

Kontor och dokument

LibreOffice Writer, Calc, Impress och Draw; Evince; GNOME Text Editor; Xournal++; PDF Arranger; MoonLight PDF; Kalender; Klockor; Väder; Kartor; Kalkylator

Media

VLC; Celluloid; Rhythmbox; GStreamer med libav, plugin-uppsättningarna ”bad” och ”ugly” och VA-API, så att H.264, H.265 och AAC spelas upp i alla program

Grafik och skanning

GIMP; Drawing; Eye of GNOME; MoonLight Export; Simple Scan; Typsnittsvisare; Skärmbild

System

GNOME Software; Systemövervakare; Diskar; GParted; Diskanalys; Timeshift; Redshift; File Roller; Seahorse; Blueman; Skrivare; MoonLight Tweaks

Nätverk och VPN

NetworkManager med OpenVPN, OpenConnect (Cisco AnyConnect, GlobalProtect, Fortinet), L2TP, PPTP, SSH och inbyggt stöd för WireGuard

Utveckling

Visual Studio Code; gcc, g++, make, gdb; git, git-lfs; cmake, meson, ninja; Python 3 med pip, venv, NumPy och OpenCV; Node.js och npm; Rust och Cargo; Go; OpenJDK 21 med Maven och Gradle; Docker Engine, Compose v2 och Buildx; SQLite

Terminal

GNOME Terminal; bash, zsh och 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-kompatibilitet

Wine med stöd för 32 bitar, winetricks, DXVK (Direct3D 9 till 11) och VKD3D (Direct3D 12)

Hårdvara och drivrutiner

Firmware

Hela uppsättningen linux-firmware, mikrokod för Intel och AMD samt fwupd för firmwareuppdateringar.

Grafik

Mesa med Vulkan, VA-API och VDPAU för Intel och AMD. NVIDIA-drivrutinen ligger på ISO-avbilden, så den går att slå på från sidan Drivrutiner även utan uppkoppling.

Wifi och Ethernet

Över femtio drivrutiner för trådlöst i kärnan, plus broadcom-sta och r8168 byggda med DKMS för de kretsar som standarddrivrutinerna sköter illa.

Skrivare och skannrar

CUPS med hela drivrutinsuppsättningen, utskrift till PDF, SANE och Simple Scan.

Bluetooth

BlueZ, Blueman och Bluetooth-kodekarna i PipeWire, med en inställningssida som tydligt säger till när datorn saknar Bluetooth.

Ljud

PipeWire med WirePlumber, kompatibilitet med PulseAudio och en inbyggd equalizer med tio band.

Bärbara datorer

power-profiles-daemon, thermald, batteriprocenten i panelen, tryck för att klicka och naturlig rullning påslagna som standard, stöd för Wacom och Synaptics.

Virtuella maskiner

Gästverktygen för VirtualBox, QEMU/SPICE och VMware följer med, så skärmen ändrar storlek och urklippet delas.

Fingeravtrycksläsare

fprintd, libfprint och TOD-laddaren är installerade och kopplade till PAM. Fingeravtryck känner igen sensorn och lotsar dig genom registreringen.

Ansiktsupplåsning

Ansiktsupplåsning via OpenCV för inloggningsskärmen, låsskärmen och sudo. Avstängt tills du slår på det.

Säkerhet

Allt nedan är påslaget som standard i ett installerat MoonLightOS.

  • Secure Boot

    Firmware → Canonicals shim → signerad GRUB → signerad kärna. Inställningar → Om visar om det är påslaget i din dator.

  • Diskkryptering

    LUKS2-kryptering av hela disken är en enda kryssruta i installationsprogrammet.

  • Brandvägg

    ufw är påslagen: inkommande anslutningar blockeras och utgående tillåts.

  • AppArmor

    Läget enforcing, även för snappaket.

  • Automatiska säkerhetsuppdateringar

    Från Ubuntus säkerhetsarkiv och packages.mozilla.org, varje dag. Oanvända kärnor och beroenden rensas bort, och datorn startar aldrig om av sig själv.

  • Låst root-konto, spårbar sudo

    Det första användarkontot administrerar datorn via sudo. Något root-lösenord sätts aldrig.

  • Krav på lösenord och utelåsning

    Minst åtta tecken ur två teckenklasser. Efter åtta felaktiga försök låses kontot i femton minuter.

  • Härdad kärna

    Kärnan är inställd på att begränsa vad program utan behörighet kan få veta om systemet och om varandra: kärnpekare och uppstartsmeddelanden döljs, felsökning av andra processer blockeras och det går inte att läsa in en ersättningskärna under drift. Nätverksdelen är härdad mot förfalskade vägar och störtfloder av anslutningar, och IPv6-adresser byts ut regelbundet.

  • Mindre angreppsyta

    FireWire och en rad sällan behövda moduler för filsystem och nätverksprotokoll kan inte läsas in automatiskt, så en enhet som ansluts eller ett paket som kommer in kan inte dra in kod som den här datorn aldrig använder.

  • Unikt redan vid första starten

    Maskin-id och SSH-värdnycklar skapas på den installerade datorn. En värdnyckel som alla installationer delade skulle göra värdkontrollen meningslös.

  • Ingen telemetri

    Tjänsterna för felrapporter och användningsstatistik finns inte på avbilden. Telemetri, studier, Pocket och sponsrat innehåll i Firefox är avstängda via policy, och spårningsskyddet är på.

  • USB-skydd

    USBGuard är installerat, så en enhet som ansluts medan skärmen är låst blir inte betrodd. Avstängt som standard; en knapp på sidan Säkerhet slår på det.

  • Nödlösenord

    Ett andra lösenord som gör något annat än att logga in dig. Raderingsläget förstör diskens LUKS-nycklar och stänger av datorn; skenläget öppnar en tom session och fryser den efter fem minuter. Avstängt som standard, kräver ditt riktiga lösenord för att ställas in och får inte vara samma som det.

  • Lösenord för uppstartsmenyn

    Erbjuds på sidan Säkerhet, eftersom den som kan starta om datorn annars kan ändra i uppstartsmenyn och starta ett rootskal.

  • Tydliga lösenordsfrågor

    Varje hjälpprogram från MoonLight har en namngiven polkit-åtgärd, så att lösenordsfrågan talar om vad du godkänner.

Skärmbild av MoonLightOS
Skärmbilden är tagen vid en verklig start av den installerade avbilden. Inget montage.

På datorer med lite minne

Komprimerat minne (zram)Halva minnet, upp till 8 GB, zstd-komprimering, prioritet 100. Ungefär 3:1 på skrivbordets minnessidor.
Inställning av växlingKärnans standardvärde 60 utgår från att en växling betyder en diskåtkomst. Med zram betyder den en minneskopiering.
Skydd mot slut på minneGår in vid 4 % ledigt minne och skickar SIGKILL vid 2 %. Stoppar aldrig Cinnamon, Xorg, LightDM eller Nemo; stoppar Firefox, Thunderbird, Code, LibreOffice och kompilatorer först.
Ingen indexeringIngen tracker och ingen genomsökning av disken i bakgrunden.
Automatisk grafikanpassningVid inloggningen kontrollerar systemet vilken OpenGL-renderare som används. Är det llvmpipe eller någon annan programvarurenderare stängs animationerna av. Ett val som du gör senare skrivs aldrig över.
GRUBBegär ett måttligt grafikläge med reservalternativ, så att menyn syns även i en virtuell maskin med lite grafikminne.
SquashfsKomprimerat med zstd, så livesessionen läses in snabbt från ett USB-minne.

Språk

Guiden vid första starten visar en kort lista med engelska (USA och Storbritannien), italienska, franska, tyska, spanska, brasiliansk portugisiska, nederländska, polska och ryska, och alla övriga språk under ”Fler språk”. Tangentbordslayouten följer språket du väljer, så i det andra steget räcker det oftast med att klicka på Nästa.

Alla MoonTools, 774 textrader totalt, är översatta till de åtta språken utöver engelska, och bygget misslyckas om ett program innehåller en synlig text som inte är översatt. Det italienska språkpaketet och ordlistorna till LibreOffice ligger på avbilden, så en installation utan uppkoppling i Italien blir helt översatt; andra språkpaket hämtas med ett klick.

Kommandoradsverktygen är medvetet kvar på engelska: deras utdata läses tillsammans med dokumentationen och klistras in i felrapporter, och det går lättare på ett enda språk.

Skärmbild av MoonLightOS

Beslut som är värda att känna till

  • GTK-temana importerar Adwaita och färgar om det.

    Ett tema som är skrivet för hand går sönder varje gång GTK får en ny komponent. Det här ärver rättningarna uppströms.

  • Cinnamons sida Systeminformation är omdirigerad, inte borttagen.

    En Cinnamon-uppdatering kan inte tyst lägga tillbaka den intill vår egen, och om MoonLightOS-paketen tas bort kommer den tillbaka som den ska.

  • Squashfs-filen har en egen kopia av kärnan.

    Det är samma squashfs som installationsprogrammet kopierar till disken. Att ta bort /boot ur den skulle ge en installation som inte kan starta.

  • Starttemat heter moonlightos, inte moonlight.

    Debians paket desktop-base innehåller redan ett Plymouth-tema som heter moonlight, och en uppdatering skulle tyst byta ut animationen.

  • uBlock Origin följer med, det hämtas inte.

    En policy som pekar på addons.mozilla.org installerar tillägget bara första gången Firefox körs med en fungerande anslutning. Tillägget ligger på avbilden, och du kan fortfarande ta bort det.

  • Docker Engine i stället för Docker Desktop.

    På Linux kör Docker Desktop motorn i en egen virtuell maskin, alltså ytterligare en kärna och ytterligare en minnesbudget i en bärbar dator.

  • De tunga utvecklingsstackarna är valfria.

    Virtuella maskiner, PHP med databaser och LaTeX ligger ett klick bort i Välkommen, i stället för en gigabyte som varje installation skulle bära med sig.