Skip to content

Releases: tarilka0gg/simple-linux

Simple Linux 0.2.36

Choose a tag to compare

@tarilka0gg tarilka0gg released this 20 Oct 13:50

Smaller images; the installer, the offline payload, the stage3 and the kernel files are those of 0.2.35. Sizes (0.2.35 → 0.2.36): GUI 516.5 → 487.7 MiB, minimal 363.1 → 347.5 MiB, GUI offline 1706.3 → 1677.5 MiB, minimal offline 1552.9 → 1537.3 MiB. Checked in QEMU, not on real hardware: all four images boot (the GUI ones on BIOS and UEFI, with the network blocked for the offline ones), no program or library of the live system has an unresolved library, and a full offline install from the GUI offline image (191 packages, no network) finished and the installed disk booted to a login.

  • Left out of the live image: the ffmpeg 7 compatibility libraries and the CUPS print server (nothing in the image used them) and libsmi's MIB files; 15 MiB less in the root image. iso/slim-excludes.py --check still proves that no program that stays needs a library that is cut.
  • Intel microcode blobs that several CPU signatures share are kept once in the early-microcode part of the initramfs, which the medium carries twice (12 MiB less in all).
  • Fixed in the build: the list of cut packages named files by their usr/sbin/... paths, which in the merged-usr tree really are in usr/bin, so a cut left stray files behind; the paths are resolved now.
  • Known: an install in a VM whose graphics card is a virtual 3D one (virtio-vga with GL) asks Mesa for virgl, which the binary host's Mesa lacks, so Portage tries to compile Mesa and LLVM: it takes very long online and cannot work offline. This is the case since 0.2.32; on a machine with a real graphics card, or a plain VGA in the VM, the offline install works.

Simple Linux 0.2.35

Choose a tag to compare

@tarilka0gg tarilka0gg released this 19 Oct 22:08

A small release: the image now carries the shared language setting. The installer, the programs, the offline payload, the stage3 and the kernel files are those of 0.2.34.

  • /etc/simple-linux/locale.toml is in the image (lang = "auto", fallback = "en"): the one place that sets the language of Simple Linux programs, read by simple-locale (ustan and Ring-2Zero already use it). auto follows the system locale, so nothing changes until you edit the file; ~/.config/simple-linux/locale.toml and SIMPLE_LANG=uk override it per user and per run. The installer does not copy the file to the installed system yet, and no program in the image reads it yet except ustan if you add it.

Simple Linux 0.2.34

Choose a tag to compare

@tarilka0gg tarilka0gg released this 19 Oct 20:13

One change in the installer; the rest of the image is that of 0.2.33 (GUI 516 → 517 MiB). Checked in QEMU: the Software page was opened in the live session and a screenshot enlarged by a click.

  • Click a program's screenshot on the Software page to see it full-size. It opens at its own size in a window over the installer; Esc or a click on it closes it. The pointer turns into a zoom cursor over a picture.

Simple Linux 0.2.33

Choose a tag to compare

@tarilka0gg tarilka0gg released this 18 Oct 23:06

More software to choose from in the installer, nothing else changes in the live system. Sizes (0.2.32 → 0.2.33): GUI 514 → 517 MiB, minimal 362 → 363 MiB, GUI offline 1704 → 1706 MiB, minimal offline 1552 → 1553 MiB. Checked in QEMU, not on real hardware: the GUI image booted and its Software page lists the new groups; the packages below were installed in a Gentoo chroot and started in the live GUI session. An install of the new groups with the installer itself was not run.

  • Four new software groups on the Software page: Steam, Minecraft (PineconeMC, the Prism Launcher fork with Ely.by accounts), Creative Craft apps (PhotoCraft, LightCraft, VectorCraft, DesignCraft, FilmCraft, EffectCraft) and Craft office apps (WordCraft, GridCraft, DeckCraft, PdfCraft). The Craft apps are the open-source programs of the ArtCraft project (Apache-2.0 or MIT): early versions, and they run on the CPU where there is no usable graphics card.
  • Their own overlay. Portage has none of these programs (except Steam, which is in the steam-overlay), so the installer carries a small overlay, slp-local, with ebuilds that install the ready-made releases from GitHub, pinned by checksum; Steam's overlay is cloned from git. Ticking Steam is the acceptance of Valve's licence.
  • Steam rebuilds some packages for 32-bit (util-linux, fontconfig, expat, Mesa...), so the installer runs emerge --changed-use when a group asks for 32-bit libraries. The dependency plan resolves (about 310 packages on a minimal system); Steam itself was not installed or started.
  • Screenshots for Telegram, GIMP, mpv, VLC, LibreOffice, PineconeMC and the ten Craft apps on the Software page (27 in all).
  • These groups are not on the offline images (they download); the binhost build leaves them out.

Also in this release: 0.2.32 (never published on its own)

Sizes (0.2.31 → 0.2.32): GUI 513 → 514 MiB, minimal 361 → 362 MiB, GUI offline 1703 → 1704 MiB, minimal offline 1551 → 1552 MiB. Checked in QEMU, not on real hardware: the finished GUI ISO booted headless, SSH was tried against it (below), and its installer's Software page was opened in the live session and looked at. Headless installs of the minimal flavor and on legacy BIOS ran to the end; a UEFI install and a GUI-flavor install were not repeated with these final images.

  • Flavors and mix-ins, like Funtoo's epro. A system is one flavor (minimal, desktop, workstation, and live for this image) plus mix-ins (16 software groups, 6 graphics cards). The data lives in profiles/ of gentoo-installer and is compiled into the installer; the new slp command (show, list, info, init, flavor, mix-in, apply, rebuild, install) changes it on an installed system and writes the Portage files that go with it (package.use, package.accept_keywords, package.license, the set @slp). Both installers have a flavor choice; headless installs read GENTOO_INSTALLER_FLAVOR. The live image is built from the live flavor.
  • Software page with descriptions and screenshots. One scrolling page: the flavor, then groups that expand to the packages in them, each with a description (all 70 packages) and, for 11 of them, a screenshot shipped inside the installer. Apps that are not in the live image have no screenshot.
  • Opt-in SSH in the live session. sshd starts only when a key is found: an authorized_keys file on a volume labelled SIMPLE_SSH, or ssh/authorized_keys on the live medium. Keys only: password and keyboard-interactive logins are off. Checked: with the key disk the right key logs in, a password and another key are refused; without it nothing listens on port 22. Not found why the same test never answered in the virtual-GPU (GL) VM; the headless one works.
  • Fixed: the kernel build ran on every online install in 0.2.27–0.2.31, not only when it was asked for. It now runs only when chosen (GENTOO_INSTALLER_KERNEL_BUILD=1 or the page's option).
  • Fixed: installs on legacy BIOS (GPT disks) failed for lack of a BIOS boot partition; the installer now makes a 1 MiB one at the end of the disk. Not covered: BIOS together with the "next to what is there" free-space placement, which makes no BIOS boot partition.
  • Known noise: the live console prints "user.tester failed to start"; AMD graphics without LLVM is still untested.

Simple Linux 0.2.31

Choose a tag to compare

@tarilka0gg tarilka0gg released this 18 Oct 10:16

Smaller again; the installer, the offline payload, the stage3, the kernel files and the Zen profile are those of 0.2.30. Sizes (0.2.30 → 0.2.31): GUI 560 → 513 MiB, minimal 369 → 361 MiB, GUI offline 1750 → 1703 MiB, minimal offline 1558 → 1551 MiB. Checked in QEMU, not on real hardware: the minimal image booted with the tools below; a test image built from the same GUI tree was run on the virtual GPU (niri and Noctalia up, a wallpaper set, a terminal opened, the installer window shown). The finished GUI ISO itself was not booted.

  • No LLVM in the GUI image. Mesa is built without it (USE=-llvm): the AMD driver (radeonsi) compiles with its own compiler (ACO), and software OpenGL is softpipe instead of llvmpipe; the 107 MiB libLLVM is gone (27 MiB compressed), together with the SPIR-V helpers and clang. A machine with no usable graphics card still gets the graphical installer in its fallback window. Not tested on an AMD graphics card, only on the virtual GPU.
  • Portage's saved build environments (environment.bz2, 12 MiB, already compressed) are left out: only emerge -C reads them.
  • Noctalia's default wallpaper (a 5 MiB PNG) is left out; the live image sets its own wallpaper at every start.
  • iso/slim-excludes.py refuses to build if a program that stays still needs a library it would drop, so a Mesa that still wanted LLVM cannot ship by accident.

Simple Linux 0.2.30

Choose a tag to compare

@tarilka0gg tarilka0gg released this 18 Oct 09:32

Zen Browser in the live session comes ready; nothing else changes (the installer, the offline payload, the stage3, the kernel files and the image sizes are those of 0.2.29: GUI 560 MiB, minimal 369 MiB, GUI offline 1750 MiB, minimal offline 1558 MiB). The GUI tree these images are made from was started in QEMU and Zen was opened in it with the profile below (the finished GUI ISO itself was not booted); the minimal image was booted and runs as before.

  • Zen Browser in the live session starts from a fresh, ready profile every time: DuckDuckGo as the search engine; uBlock Origin, SponsorBlock, CanvasBlocker and LocalCDN installed from addons.mozilla.org; DNS over HTTPS (Quad9), HTTPS-only mode and tracking protection; settings that spend less RAM and CPU (no site isolation, two content processes, no disk cache, a 64 MB memory cache); and the author's Zen layout, tabs on the right and no compact mode, with the nine Zen mods Zen downloads itself from its mod store at the first start (Quietify, Left close button, No Top Sites, Floating Status Bar, Better CtrlTab Panel, Tidy Popup, Cleaned URL bar, NoHighlightSplit, Add new tab urlbar icon). Checked with the real Zen 1.23.3b in an isolated profile: the extensions install and run, the preferences and policies apply, the mods are downloaded and their style sheet is built, the profile is left alone while Zen runs and made new when it starts again. The welcome pages the extensions open on their first install are closed again, Zen's "What's new" notice is switched off, and the extension buttons sit in the extensions panel, not on the toolbar. Not checked inside a live image, nor how the layout sits with the live session's window rules (the niri rule keeps Zen maximized).

Simple Linux 0.2.29

Choose a tag to compare

@tarilka0gg tarilka0gg released this 17 Oct 22:06

Smaller images again. Only what the live system carries changes; the installer, the offline payload, the stage3 and the kernel files are the ones of 0.2.28. Checked in QEMU, not on real hardware: the minimal image boots and runs git, tcpdump and the installer without the removed tools; the GUI image boots to the niri desktop (Noctalia bar and dock, a terminal, the installer window) on software rendering.

  • Sizes (0.2.28 → 0.2.29): GUI 592 → 560 MiB, minimal 387 → 369 MiB, GUI offline 1782 → 1750 MiB, minimal offline 1576 → 1558 MiB.
  • LLVM built for the CPUs a PC uses only (X86 and AMDGPU, not AArch64, RISC-V, WebAssembly and the other 17 targets): libLLVM, which Mesa's software renderer and radeonsi load, is 107 MiB instead of 154 MiB.
  • Parts of packages instead of whole packages: git is built without Perl, Python and GnuPG, tcpdump without libsmi (its 17 MiB of MIB files).
  • No build or documentation tools on the medium: Perl and every Perl script, autoconf, automake, libtool, bison, flex, m4, nasm, vala, sassc, the mail client, man-db, groff, texinfo, mandoc, lld and mesa_clc, plus fish's developer tools (fish_indent, fish_key_reader) and hwdata's MAC-vendor lists. iso/slim-excludes.py makes the list and refuses to build when a program that stays still needs a library it would drop (it found that ghostty needs glslang, so that stays).
  • Not checked: an install from these images, the offline images booting (only their size), and Perl-dependent scripts beyond the ones used in the checks.

Simple Linux 0.2.28

Choose a tag to compare

@tarilka0gg tarilka0gg released this 17 Oct 19:58

Smaller images and the right name. The installer is rebuilt for the name change; the offline payload, the stage3 and the kernel files are the ones of 0.2.27. Checked in QEMU, not on real hardware: the minimal image boots to the installer and the shell, the GUI image boots to the desktop.

  • The system calls itself Simple Linux. /etc/os-release says Simple Linux on the live medium and on every installed system, so Noctalia's System panel, fastfetch and similar tools stop saying "Gentoo". ID stays gentoo, because tools that read it mean the package base.
  • About 45 MB less in each image (GUI 637 → 592 MiB, minimal 434 → 387 MiB, the offline ones shrink the same way). The live system no longer carries what it never uses: the compiler and binutils (the installer builds the kernel inside the installed system, which has its own), the GRUB files (the boot loader is Limine), and firmware for hardware no PC with a screen has (SDIO and SoC Wi-Fi boards, server NICs and storage adapters, TV and capture cards, ISA/PCMCIA-era devices, serial adapters, ADSL modems). os-prober, Python for equery, and the Wi-Fi, GPU, Bluetooth and audio firmware stay.
  • Not checked: an install from these images, and the GUI installer's pages after the size cuts.

0.2.27

Choose a tag to compare

@tarilka0gg tarilka0gg released this 16 Oct 20:52

0.2.27

A new installer in all four images (and the offline payload, the stage3 and the kernel files unchanged from 0.2.26). Everything below was checked in QEMU, not on real hardware; what was not checked is said in each item.

  • Install next to other systems. The disk page can use the free space of a GPT disk instead of erasing it: you pick how many GiB to give, the existing EFI partition is mounted (never
    formatted), Windows and other distros found on it appear in the Limine menu, and the installer registers its own UEFI boot entry. GParted is offered for making room. Checked in a VM with
    a disk holding fake Windows/Ubuntu loaders: they stayed intact, the menu listed them, the new system booted. Not yet checked: the graphical flow end to end, booting the other systems.
  • Several keyboard layouts with a switch key (Caps Lock by default), applied to the running desktop at once on the live medium and written into the installed niri; time zone search by city,
    capital or country, and the zone found from the connection in the background (not on offline images).
  • Graphics page: cards listed by name (vendor, model, integrated or discrete), a choice of the card the desktop is drawn on, the driver list folded into one row (it no longer covers the Continue
    button). The Optimization page is one list of switches; the disk, confirm and Wi-Fi pages scroll.
  • Optional kernel for this computer (Advanced, Optimization; off by default): when the store has no kernel for exactly the hardware, the installer builds one from the
    kernel-matrix on the new system and keeps the generic kernel if the build fails. Checked in a VM (built, booted); the clang fallback and the NVIDIA path are not.
  • Fixes: a resumed install uses the layout the first run made; the installed system is called simple-linux, not gentoo; the installer says "Simple Linux" instead of "Gentoo"; simple-linux-update keeps other
    systems' entries in limine.conf and leaves a kernel built on the machine alone; block devices of 0 B are not listed as disks.

0.2.26

Choose a tag to compare

@tarilka0gg tarilka0gg released this 16 Oct 11:14

0.2.26

A fix for the desktop of all four images; nothing else changed (the installer, the kernels and the stage3 are the 0.2.25 ones).

  • The colours follow the wallpaper again after the first prompt. The images carry the author's saved Noctalia config, and in it the colors_changed hook was commented out, so hooks/colors.d/*.sh never ran after a wallpaper
    change: tui-shim's palette (~/.config/tui-shim/palette.md), micro's colour scheme and the line icons kept the colours of the first start while Noctalia's own templates (ghostty, btop, niri) changed. prepare-rootfs.sh now registers
    started and colors_changed in the config whatever its source. Checked in a VM with the 0.2.25 image: after noctalia msg wallpaper-random with the hook line added, palette.md and micro's scheme were rewritten 0.4 s after the new
    ghostty theme (before, they kept the time of the first start). A micro that is already open keeps its colours until it is restarted.