dinsdag 21 januari 2025

Installeer een theme in Grub bij Grub2

 


je kunt zelf een theme maken of er een downloaden vanaf internet.

Plaats het theme in een aparte map in /boot/grub/theme/

Vervolgens moet je dit bestand aanpassen:

sudo xed /etc/default/grub

Voeg deze regel toe,

GRUB_THEME=/boot/grub/theme/[THEME_FOLDER]/theme.txt

in mijn geval is de  THEME_map sinclair, dus dan wordt dat:

GRUB_THEME=/boot/grub/theme/sinclair/theme.txt

save het bestand.

en daarna moet grub worden ge-update

sudo update-grub 

en daarna zal grub grub aangepast zijn na een herstart.

zaterdag 18 januari 2025

Maak een eigen Linux CD

 

  1. Het voorbereiden van de omgeving

        Stel enkele variabelen in

export WORK=~/work
export CD=~/cd
export FORMAT=squashfs
export FS_DIR=casper

De WORK-directory is waar onze tijdelijke bestanden en het koppelpunt zich zullen bevinden. De CD is de locatie van de CD-boom. FORMAT is het bestandssysteemtype. Wij gaan een gecomprimeerde squashfs gebruiken. FS_DIR is de locatie van de daadwerkelijke bestandssysteemimage binnen de cd-boom.

 

Maak de CD en de WORK-directorystructuur:

sudo mkdir -p ${CD}/{${FS_DIR},boot/grub} ${WORK}/rootfs
Installeer enkele pakketten op het systeem:

sudo apt-get update

sudo apt-get install grub2 xorriso squashfs-tools
Kopieer uw installatie naar het nieuwe bestandssysteem

sudo rsync -av --one-file-system --exclude=/proc/* --exclude=/dev/* \
--exclude=/sys/* --exclude=/tmp/* --exclude=/home/* --exclude=/lost+found \
--exclude=/var/tmp/* --exclude=/boot/grub/* --exclude=/root/* \
--exclude=/var/mail/* --exclude=/var/spool/* --exclude=/media/* \
--exclude=/etc/fstab --exclude=/etc/mtab --exclude=/etc/hosts \
--exclude=/etc/timezone --exclude=/etc/shadow* --exclude=/etc/gshadow* \
--exclude=/etc/X11/xorg.conf* --exclude=/etc/gdm/custom.conf \
--exclude=/etc/lightdm/lightdm.conf --exclude=${WORK}/rootfs / ${WORK}/rootfs
  • Opmerking: rsync wordt gebruikt in plaats van cp om voordeel te halen uit de --one-file-system en --exclude opties. 
  • Als u een aparte opstartpartitie heeft, moet u deze kopiëren met behulp van de volgende opdracht:

sudo cp -av /boot/* ${WORK}/rootfs/boot

(Optioneel) Kopieer instellingen naar uw thuismap:

  • Als u de instellingen van uw gebruikersaccount, die in uw thuismap zijn opgeslagen, wilt behouden, kunt u deze kopiëren naar ${WORK}/rootfs/etc/skel/. Maar eerst moeten we definiëren welke bestanden we willen kopiëren. Ik gebruik bijvoorbeeld cinnamon als mijn D|esktop beheerder, en het slaat alle instellingen op in een map met de naam .config in mijn thuismap, dus ik ga .config toevoegen aan de variabele $CONFIG:

(Optioneel)

CONFIG='.config .bashrc'

Kopieer nu de CONFIG-bestanden met behulp van de volgende opdracht (in een keer ingeven in de terminal): (optioneel)

cd ~ && for i in $CONFIG
do
sudo cp -rpv --parents $i ${WORK}/rootfs/etc/skel
done

Chroot in het nieuwe systeem en pas het systeem aan

  1. Chroot naar het gekopieerde systeem na het aankoppelen van proc en dev:

sudo mount  --bind /dev/ ${WORK}/rootfs/dev

sudo mount -t proc proc ${WORK}/rootfs/proc

sudo mount -t sysfs sysfs ${WORK}/rootfs/sys

sudo mount -o bind /run ${WORK}/rootfs/run

sudo chroot ${WORK}/rootfs /bin/bash

N.B: Alle opdrachten die binnen een chroot worden uitgevoerd, worden gemarkeerd met (chroot).

  • Nu u zich in de chroot-omgeving bevindt, typt u het volgende commando:

(chroot)

LANG=
  1. Installeer essentiele pakketten voor de live CD:

(chroot)

apt-get update

(chroot)

apt-get install casper 

casper contains the live scripts.

3. (Optioneel) Als je wilt dat je live-cd een installatieprogramma heeft, installeer dan het Ubuntu-installatieprogramma:

(chroot)

apt-get install ubiquity ubiquity-frontend-gtk

Opmerking: mensen die kde gebruiken vervangen het vorige commando door: 

(chroot)

apt-get install ubiquity ubiquity-frontend-kde 

Eer voor deze tip gaat naar Fragadelic auteur van remastersys.

(Optionele stap)
Installeer alle pakketten die u op de cd wilt hebben. Sommige van de volgende pakketten zijn handig in noodsituaties:

apt-get install gparted testdisk wipe partimage xfsprogs reiserfsprogs jfsutils ntfs-3g dosfstools mtools

Update de initramfs: 

Update eerst modules.dep:

(chroot)

depmod -a $(uname -r)

(chroot)

update-initramfs -u -k $(uname -r)

Zoals hierboven al vermeld, is initramfs verantwoordelijk voor een groot deel van de voorbereiding die nodig is tijdens het opstarten van de CD/DVD. De bijgewerkte initramfs bevatten nu de live scripts die met casper zijn geïnstalleerd.

Verwijder toegevoegde niet-systeemgebruikers

(chroot)

for i in `cat /etc/passwd | awk -F":" '{print $1}'`
do
        uid=`cat /etc/passwd | grep "^${i}:" | awk -F":" '{print $3}'`
        [ "$uid" -gt "998" -a  "$uid" -ne "65534"  ] && userdel --force ${i} 2> /dev/null
done

Niet-systeemgebruikers zijn door u aangemaakte gebruikers met een gebruikers-ID hoger dan 999.

N.B: Als er een gebruiker met uid 999 aanwezig is, verwijderen we deze ook omdat die uid behouden blijft voor de live cd-gebruiker.
Maak het systeem schoon. Maak eerst de apt-cache schoon

(chroot)

apt-get clean

Ruim alle extra logbestanden op

(chroot)

find /var/log -regex '.*?[0-9].*?' -exec rm -v {} \;

De resterende logbestanden worden op nul gezet, anders gaat het systeem klagen als ze worden verwijderd.

(chroot)

find /var/log -type f | while read file
do
        cat /dev/null | tee $file
done

(chroot)

rm /etc/resolv.conf /etc/hostname

Verlaat chroot

(chroot)

exit

Bereid de CD-directoryboom voor


Kopieer de kernel, de bijgewerkte initrd en memtest voorbereid in de chroot:

export kversion=`cd ${WORK}/rootfs/boot && ls -1 vmlinuz-* | tail -1 | sed 's@vmlinuz-@@'`

sudo cp -vp ${WORK}/rootfs/boot/vmlinuz-${kversion} ${CD}/${FS_DIR}/vmlinuz

sudo cp -vp ${WORK}/rootfs/boot/initrd.img-${kversion} ${CD}/${FS_DIR}/initrd.img

sudo cp -vp ${WORK}/rootfs/boot/memtest86+.bin ${CD}/boot

(optioneel) Genereer manifest:

  • Opmerking: deze stap is alleen nodig als u het alomtegenwoordige Ubuntu-installatieprogramma hebt geïnstalleerd. Met deze stap worden twee bestanden gegenereerd (filesystem.manifest en filesystem.manifest-desktop).

(optineel)

sudo chroot ${WORK}/rootfs dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee ${CD}/${FS_DIR}/filesystem.manifest

(optineel)

sudo cp -v ${CD}/${FS_DIR}/filesystem.manifest{,-desktop}

(optineel)

REMOVE='ubiquity casper user-setup os-prober libdebian-installer4'

(optineel)

for i in $REMOVE
do
        sudo sed -i "/${i}/d" ${CD}/${FS_DIR}/filesystem.manifest-desktop
done

(optineel) Deze twee bestanden worden door het ubiquity-installatieprogramma gebruikt bij installatie op de harde schijf. Deze twee bestanden zijn slechts lijsten met pakketten. Ubiquity vergelijkt deze twee bestanden en verwijdert pakketten die uniek zijn voor filesystem.manifest. Op deze manier worden bij installatie op de harde schijf pakketten zoals casper, die alleen nuttig zijn op een live-cd/dvd, verwijderd. Deze pakketten die tijdens de installatie worden verwijderd, worden gedefinieerd in de variabele $REMOVE

  1. Ontkoppelen,  gekoppelde mappen:

sudo umount ${WORK}/rootfs/proc

sudo umount ${WORK}/rootfs/sys

sudo umount ${WORK}/rootfs/dev

Converteer de directorystructuur naar een squashfs:

sudo mksquashfs ${WORK}/rootfs ${CD}/${FS_DIR}/filesystem.${FORMAT} -noappend

Note: Make sure the resulting file size can fit into your live media.

  1. Maak filesystem.size

echo -n $(sudo du -s --block-size=1 ${WORK}/rootfs | tail -1 | awk '{print $1}') | sudo tee ${CD}/${FS_DIR}/filesystem.size
  1. bereken MD5

find ${CD} -type f -print0 | xargs -0 md5sum | sed "s@${CD}@.@" | grep -v md5sum.txt | sudo tee -a ${CD}/md5sum.txt
  1. Maak Grub the bootloader van de CD 
  2. Maak the grub.cfg

sudo xed ${CD}/boot/grub/grub.cfg
  • Kopieer de volgende tekst erin en sla deze op.

set default="0"
set timeout=30
 
set theme="/cdrom/boot/grub/theme/sinclair/theme.txt" 
menuentry "Linux GUI" {
linux /casper/vmlinuz boot=casper quiet splash
initrd /casper/initrd.img
}

menuentry "Linux in safe mode" {
linux /casper/vmlinuz boot=casper xforcevesa quiet splash
initrd /casper/initrd.img
}

menuentry "Linux CLI" {
linux /casper/vmlinuz boot=casper textonly quiet splash
initrd /casper/initrd.img
}

menuentry "Linux GUI persistente mode" {
linux /casper/vmlinuz boot=casper persistent quiet splash
initrd /casper/initrd.img
}

menuentry "Linux GUI vanuit RAM" {
linux /casper/vmlinuz boot=casper toram quiet splash
initrd /casper/initrd.img
}

menuentry "Boot from the first hard disk" {
set root=(hd0)
chainloader +1
}

Maak de CD/DVD

  1. Make the ISO file met iso level 3 als deze groter is dan 4 Gb

sudo grub-mkrescue -o ~/live-cd.iso ${CD}  -iso-level 3

zaterdag 11 januari 2025

Lutris, games installeren via een centraal beheerplatform.

Lutris is een open gamingplatform voor Linux. 

Een deb package voor Ubuntu en Linux mint is beschikbaar vanaf de release pagina op Github: https://github.com/lutris/lutris/releases

Packages compatible met Debian (en Mint debian edition) vind je hier openSUSE Build Service.

Je kunt een repository voor Debian toevoegen via de terminal om automatische updates te krijgen:

echo "deb [signed-by=/etc/apt/keyrings/lutris.gpg] https://download.opensuse.org/repositories/home:/strycore/Debian_12/ ./" | sudo tee /etc/apt/sources.list.d/lutris.list > /dev/null
wget -q -O- https://download.opensuse.org/repositories/home:/strycore/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/keyrings/lutris.gpg > /dev/null
sudo apt update
sudo apt install lutris


Overige linux distributies staan hier uitgelkegd in het Engels: 

https://lutris.net/downloads

Lutris helpt bij het installeren en spelen van videogames uit alle tijdperken en vanaf de meeste spelsystemen. Door bestaande emulators, herimplementaties van engine en compatibiliteitslagen te benutten en te combineren, krijgt u een centrale interface om al uw games te starten. De client kan verbinding maken met bestaande services zoals Humble Bundle, GOG en Steam om gamebibliotheken gemakkelijk beschikbaar te maken. Het downloaden en installeren van games is geautomatiseerd en kan worden aangepast via door de gebruiker gemaakte scripts. 

Voordat u Lutris installeert (of in ieder geval voordat u games gaat spelen), moet u ervoor zorgen dat uw computer volledig is ingesteld om games uit te voeren. Dit houdt onder meer in dat u ervoor zorgt dat uw grafische stuurprogramma's zijn geïnstalleerd en up-to-date zijn, dat Vulkan is geïnstalleerd en dat de 32-bits bibliotheken voor OpenGL / Vulkan aanwezig zijn. Als een van deze componenten ontbreekt, geeft Lutris een waarschuwing. We raden u ook ten zeerste aan Wine vanuit uw pakketbeheerder te installeren. Dit kan elke versie van Wine zijn (stabiel, ontwikkelings- of stagingversie), zolang deze zowel 32bit- als 64bit-varianten gebruikt. Lutris zal er meestal niet rechtstreeks gebruik van maken, maar de peer-afhankelijkheden die vanuit het Wine-pakket zijn geïnstalleerd, zijn nodig om onze Wine-versie correct te laten werken.

Lutris installeren

Ga naar de downloadpagina en volg de instructies voor je Linux distributie.

Koppel uw accounts door hierop in te loggen.

Gebruik het gedeelte Sources in de zijbalk om in te loggen bij gamewinkels of op uw Lutris-account. Nadat je bent ingelogd, verschijnt jouw gamebibliotheek in de juiste sectie. Voor de Steam-service hoeft u niet in te loggen, maar moet Steam op uw systeem zijn geïnstalleerd en moet uw account openbaar zijn (tenminste voor de duur van de synchronisatie).

Runners zijn de programma's die Lutris gebruikt om games uit te voeren. Lutris levert deze programma's, zodat je ze niet op jouw systeem hoeft te installeren (behalve Wine, zoals eerder vermeld).

Runners kunnen compatibiliteitslagen, emulators of game-engines zijn die games vanaf verschillende hardware- en softwareplatforms kunnen uitvoeren. Als je dus bijvoorbeeld Atarri spellen wilt spellen, moet je de Atari runner installeren.


Lutris werkt met  Battle.net, Epic games store, EA app en Ubisoft Connect en met Steam en GOG.

Games van GOG, Epic en Prime starten via een centrale App: Heroic

Op linux (en Mac en windows) kunnen spellen die (via Wine of Proton) gespeeld kunnen worden eenvoudig gestart worden via een nieuwe lanceerapp. Zowel spellen van GOG, Epic en Prime gaming kunnen zo centraal worden beheerd, geupdate en gestart.


De starter staat op Github en is hier te vinden:

https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher

Debian, Ubuntu en Linux Mint:

Download de .deb file  vanaf deze locatie: latest release.

Dubbel klik om het te openen in gdebi, of geef dit commendo in de terminal

 sudo dpkg -i heroic_*_amd64.deb

om het te installeren. Daarna starten en inloggen in de game platform account die je gebruikt.



Certificaat installeren met Certbot

 De originele engelstalige handleiding staat hier: https://certbot.eff.org/instructions Als je Certbot wilt installeren met SNAP ga dan alsv...