http://gitlab.fjfi.cvut.cz/culikzde/uop-2022

Interfacing the PC: Using Interrupts http://wearcam.org/seatsale/programs/www.beyondlogic.org/interrupts/interupt.htm

The PC's keyboard http://wearcam.org/seatsale/programs/www.beyondlogic.org/keyboard/keybrd.htm

Parallel Port http://wearcam.org/seatsale/programs/www.beyondlogic.org/spp/parallel.htm

Serial RS232 Port http://wearcam.org/seatsale/programs/www.beyondlogic.org/serial/serial.htm

http://download-mirror.savannah.gnu.org/releases/pgubook/ProgrammingGroundUp-1-0-lettersize.pdf

Assembly Language (video) https://www.youtube.com/watch?v=rxsBghsrvpI&list=PLKK11Ligqitg9MOX3-0tFT1Rmh3uJp7kA
https://www.youtube.com/watch?v=Dh7GQ_joeE4

Cuda (video) https://www.youtube.com/watch?v=kzXjRFL-gjo&list=PLKK11Ligqititws0ZOoGk3SW-TZCar4dK

Write your own Operating System https://www.youtube.com/playlist?list=PLHh55M_Kq4OApWScZyPl5HhgsTJS9MZ6M
https://github.com/AlgorithMan-de/wyoos

Emulátory

FPGA

Fpga4Student https://www.fpga4student.com/2017/04/verilog-code-for-16-bit-risc-processor.html

Fomu - ICE40 FPGA Development Board https://www.adafruit.com/product/4332 https://github.com/skordal/potato/tree/master/src

FemtoRV - https://github.com/BrunoLevy/learn-fpga/blob/master/FemtoRV/TUTORIALS/FROM_BLINKER_TO_RISCV/README.md

Quark - https://github.com/BrunoLevy/learn-fpga/blob/master/FemtoRV/RTL/PROCESSOR/femtorv32_quark.v

Float Add, Mul - https://github.com/BrunoLevy/learn-fpga/blob/master/FemtoRV/RTL/PROCESSOR/petitbateau.v#L397

Nanland RISC-V https://github.com/Mecrisp/Nandland-RISC-V

FleaFPGA Ohm - Next186, NextZ80 - https://github.com/Basman74/Next186/blob/master/Next186_SoC_Diamond_Project.zip

GHDL - https://ghdl.github.io/ghdl/

Verilator - https://www.veripool.org/verilator/

RISC-V Verilator model - https://github.com/aignacio/riscv_verilator_model

RPU - Basic RISC-V CPU implementation in VHDL - https://github.com/Domipheus/RPU

Designing a CPU in VHDL - https://domipheus.com/blog/rpu-series-quick-links

Fpga4Fun - Ethernet - https://www.fpga4fun.com/10BASE-T0.html https://www.fpga4fun.com/10BASE-T1.html ( RaspberiPi https://github.com/osnr/rpi-bitbang-ethernet/blob/master/README.md )

USB https://xess.com/projects/fpga-usb-v2-project/

Fomu, ValentyUSB https://github.com/im-tomu/valentyusb

Qomu https://workshop.fomu.im/en/latest/renode-verilator.html

QtRvSim VHDL https://gitlab.fel.cvut.cz/b4m35pap/rvapo-vhdl/-/tree/main/rvapo/core/logic

RudoIV, RiscV implementation https://github.com/bobbl/rudolv

BiRISC-V, RiscV implementation https://github.com/ultraembedded/biriscv

Niklaus Wirth: Risc5 https://people.inf.ethz.ch/wirth/Lola/index.html

VexRiscv

VexRiscv https://github.com/SpinalHDL/VexRiscv

NaxRisc https://github.com/SpinalHDL/NaxRiscv#running-verilator-simulation

https://github.com/litex-hub/zephyr-on-litex-vexriscv

https://github.com/litex-hub/linux-on-litex-vexriscv

sbt https://repo.scala-sbt.org/scalasbt/rpm

https://www.controlpaths.com/2022/03/28/running-linux-on-a-litex-soc/

https://antmicro.com/blog/2020/05/multicore-vex-in-litex

https://www.luffca.com/tag/vexriscv

https://github.com/SpinalHDL/NaxRiscv

 
dnf install dtc libevent-devel json-c-devel zlib-devel
dnf install verilator gcc-c++-riscv64-linux-gnu scala
 
https://github.com/litex-hub/linux-on-litex-vexriscv/files/8331338/linux_2022_03_23.zip
 
mkdir litex
cd latex
wget https://raw.githubusercontent.com/enjoy-digital/litex/master/litex_setup.py
chmod +x litex_setup.py
./litex_setup.py --init --install --user
 
curl -L https://www.scala-sbt.org/sbt-rpm.repo > sbt-rpm.repo
sudo mv sbt-rpm.repo /etc/yum.repos.d/
sudo yum install sbt
 
cd linux-on-litex-vexriscv
./sim.py

FPGA Poznámky

Debuggers

Poznámky

Mini OS

Raspberry

NVidia

Realtek 8125

/etc/default/grub

GRUB_DISABLE_OS_PROBER=true

/etc/apt/sources.list

deb [allow-insecure=yes] file:///mnt/other/debian/ buster main contrib

/etc/apt/apt.conf.d/…

Acquire::AllowInsecureRepositories "true";

https://packages.debian.org/bookworm/r8125-dkms

https://packages.debian.org/bookworm/all/r8125-dkms/download

QEMU

Debian Arm64

qemu-system-aarch64 \
   -M virt \
   -cpu cortex-a72 \
   -m 1G \
   -kernel kernel \
   -initrd initrd \
   -device virtio-blk-device,drive=hd \
   -drive file=image.qcow2,if=none,id=hd \
   -append "root=LABEL=rootfs" \
   -device virtio-net-device,netdev=net \
   -netdev user,id=net,hostfwd=tcp::2223-:22 \
   -device virtio-vga \
   -device virtio-keyboard \
   -device virtio-mouse

https://people.debian.org/~gio/dqib/

Debian RISC-V

qemu-system-riscv64 \
   -M virt \
   -cpu rv64 \
   -m 1G \
   -kernel kernel \
   -initrd initrd \
   -device virtio-blk-device,drive=hd \
   -drive file=image.qcow2,if=none,id=hd \
   -append "root=LABEL=rootfs" \
   -device virtio-net-device,netdev=net \
   -netdev user,id=net,hostfwd=tcp::2222-:22 \
   -device virtio-vga \
   -device virtio-keyboard \
   -device virtio-mouse

http://colatkinson.site/linux/riscv/2021/01/27/riscv-qemu/ https://people.debian.org/~gio/dqib/

Fedora Arm64

qemu-system-aarch64 \
   -M virt \
   -cpu cortex-a72 \
   -smp 4 \
   -m 4G \
   -device virtio-vga \
   -kernel vmlinuz \
   -initrd initrd.img \
   -append "console=ttyAMA root=live:CDLABEL=Fedora-WS-Live-35-1-2" \
   -cdrom Fedora-Workstation-Live-aarch64-35-1.2.iso \
   -boot d \
   -device virtio-keyboard \
   -device virtio-mouse \
   -netdev user,id=net0,hostfwd=tcp::5022-:22 \
   -device virtio-net-device,netdev=net0 \
   -no-reboot

http://mirror.karneval.cz/pub/linux/fedora/linux/releases/35/Everything/aarch64/iso/

HaikuOS RISC-V

qemu-system-riscv64 \
   -M virt \
   -m 1G \
   -device ati-vga \
   -kernel u-boot.bin \
   -drive file=haiku-master-hrev55697-riscv64-mmc.image,format=raw,if=virtio \
   -usb -device usb-ehci,id=echi \
   -device usb-kbd \
   -device usb-tablet

http://www.haiku-os.org/blog/kallisti5/2021-11-07_booting_our_risc-v_images/

http://discuss.haiku-os.org/t/my-haiku-risc-v-port-progress

vgabios-ati.bin from debian package seabios_1.14.0-2_all.deb

Raspbian Arm32

qemu-system-arm \
    -M raspi2 \
    -cpu arm1176 \
    -smp 4 \
    -m 1G \
    -append "rw earlyprintk loglevel=8 console=ttyAMA0,115200 dwc_otg.lpm_enable=0 root=/dev/mmcblk0p2" \
    -dtb bcm2709-rpi-2-b.dtb \
    -sd 2016-05-27-raspbian-jessie.img \
    -kernel kernel7.img

https://downloads.raspberrypi.org/raspbian/images/

(Rasbian 7 Wheezy nestartuje, je nezbytne pouzit kernel specielne urceny pro qemu)

RaspiOS Arm64

IMG=2021-10-30-raspios-bullseye-arm64.img
CMD="console=ttyAMA0 root=/dev/mmcblk0p2 rw rootwait rootfstype=ext4"
 
qemu-system-aarch64 \
  -M raspi3 \
  -m 1024 \
  -kernel kernel8.img \
  -dtb bcm2710-rpi-3-b.dtb \
  -drive file=$IMG,format=raw,if=sd \
  -append "$CMD"

http://downloads.raspberrypi.org/raspios_arm64/images/

qemu-img resize image_file 4G
 
fdisk -l image_file
 
mount -r image_file directory -o offset=`echo 8192*512 | bc`

Cuda

http://en.wikipedia.org/wiki/CUDA

Cuda 8.0,  compute capability 2.0 – 6.x (Fermi, Kepler, Maxwell, Pascal) (VS 2010 .. 2015)
Cuda 9.0,  compute capability 3.0 – 7.0 (Kepler, Maxwell, Pascal, Volta)
Cuda 10.2, compute capability 3.0 – 7.5 (Kepler, Maxwell, Pascal, Volta, Turing) (VS 2012 ..2019)
Cuda 11.0, compute capability 3.5 – 8.0 (Kepler (in part), Maxwell, Pascal, Volta, Turing, ...)
Cuda 12.0, compute capability 5.0 – 9.0 (Maxwell, Pascal, Volta, Turing, ...)
GT 460, GF104,  compute capability 2.1, Cuda 8.0,  NVidia Driver 390, GCC 6
GT 640, GK107,  compute capability 3.0, Cuda 10.2, NVidia Driver 470, GCC 8
GT 730, GK208B, compute capability 3.5, Cuda 10.2, Cuda 11.2, NVidia Driver 470

Arch Linux Cuda 10

pacman -S --needed base-devel
pacman -S git
git clone https://aur.archlinux.org/yay.git

edit /etc/makepkg.conf ... MAKEFLAGS="-j4"
cd yay ;  makepkg -si

yay gcc8
yay cuda-10.2
yay nvidia-470xx-dkms

remove current nvidia drivers
   pacman -R nvidia nvidia-utils opencl-nvidia

install old nvidia drivers and cuda
   pacman -U nvidia-470xx-dkms-470.86-2-x86_64.pkg.tar.zst nvidia-470xx-utils-470.86-2-x86_64.pkg.tar.zst opencl-nvidia-470xx-470.86-2-x86_64.pkg.tar.zst
   pacman -U cuda-10.2-10.2.89-3-x86_64.pkg.tar.zst 

disable nouveau
   file /modprobe/nouveau
   blacklist nouveau

Arch Linux Cuda 8

   https://jlk.fjfi.cvut.cz/arch/repo/README.html
   pacman -S nvidia-470xx-dkms

   https://wiki.archlinux.org/title/unofficial_user_repositories#arch4edu
   pacman -S gcc8 (qt4)

   edit /etc/makepkg.conf ... MAKEFLAGS="-j4"
   cd yay ;  makepkg -si

   yay cuda-8.0

Debian 10 Cuda 9

Install

menuentry "Install Debian 10 (64-bit)" {
    linux  /debian10/gtk/vmlinuz vga=788
    initrd /debian10/gtk/initrd.gz
    # vmlinuz and initrd.gz from ftp://.../dists/Debian10.12/main/installer-amd64/current/images/hd-media/gtk
    # iso image in root directory https://cdimage.debian.org/mirror/cdimage/archive/10.12.0/amd64/iso-dvd/

    # linux  /debian10/gtk/linux vga=788
    # initrd /debian10/gtk/initrd.gz
    # linux and initrd.gz from ftp://.../dists/Debian10.9/main/installer-amd64/current/images/netboot/gtk/debian-installer/amd64
}

debian-10.12.0-amd64-DVD-1.iso do kořenového adresáře nebo do adresáře “první úrovně”

Clone

# dnf install partclone
# umount /mnt/disk9
partclone.ext4 -c -s /dev/sda9 -o debian-10.12-fresh-inst.img -L clone.log -x 'gzip -c -9'

Boot from btrfs

menuentry "Debian 10 Buster" {
    set root=($sda,15)
    set dev="/dev/sda15"
    set vol="/debian10-a"
    linux  $vol/vmlinuz root=$dev rootflags=subvol=$vol ro quiet
    initrd $vol/initrd.img
}

/etc/fstab

dev/sda15    btrfs   defaults,subvol=/debian10-a   0   0

Config

# Resume=none
mcedit /etc/initramfs-tools/conf.d/resume
update-initramfs -u
/etc/apt/apt.conf.d/...
APT::Keep-Downloaded-Packages "true";

Cuda

apt-get install nvidia-driver nvidia-cuda-toolkit freeglut3-dev
apt-get install mc qtcreator kdevelop python3-pyqt5

Mandelbrot

apt-get install freeglut3-dev

Makefile
CUDA_PATH ?= /usr/
SMS ?= 30

GLPATH=/usr/lib make

Slax 9 Cuda 8

menuentry "Slax 32-bit (Fresh start)" {
    linux  /slax32/boot/vmlinuz from=/slax32/ vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0
    initrd /slax32/boot/initrfs.img
    # slax.flags=automount
}

menuentry "Slax 64-bit (Persistent changes)" {
    linux /slax64/boot/vmlinuz from=/slax64/ vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=perch
    initrd /slax64/boot/initrfs.img
}

menuentry "Slax 64-bit (Fresh start)" {
    linux  /slax64/boot/vmlinuz from=/slax64/ vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0
    initrd /slax64/boot/initrfs.img
}

menuentry "Slax 64-bit (Copy to RAM)" {
    linux  /slax64/boot/vmlinuz from=/slax64/ vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=toram
    initrd /slax64/boot/initrfs.img
}
menuentry "Slax 11 64-bit (Copy to RAM)" {
    linux /slax11_64/boot/vmlinuz from=/slax11_64/ vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 consoleblank=0 slax.flags=toram
    initrd /slax11_64/boot/initrfs.img
}

https://www.slax.org/starting.php

https://www.slax.org/customize.php

modprobe.blacklist=nouveau

menuentry "Slax 64-bit (Mini)" {
    linux  /slax64-mini/boot/vmlinuz from=/slax64-mini/ vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 slax.flags=automount modprobe.blacklist=nouveau
    initrd /slax64-mini/boot/initrfs.img
}
boot/initrfs.img
boot/vmlinuz
01-core.sb
01-firmware.sb

NVidia Driver

slax-64bit-9.9.0.iso uses kernel linux-image-4.9.0-9-amd64_4.9.168-1_amd64.deb

But repository contains linux-headers-4.9.0-19 (19, not 9)

start installation nvidia-driver with original Slax /etc/apt/sources.list

apt install nvidia-driver
apt remove linux-headers-4.9.0-19-amd64
apt remove linux-headers-4.9.0-19-common

Install linux headers

First variant - change to 4.9.0-9 /etc/apt/sources.list

# deb http://deb.debian.org/debian/ stretch main contrib non-free
# deb http://deb.debian.org/debian/ stretch-updates main contrib non-free
# deb http://security.debian.org/debian-security stretch/updates main contrib non-free

deb http://snapshot.debian.org/archive/debian/20190501T041322Z stretch main contrib non-free
deb http://snapshot.debian.org/archive/debian/20190501T041322Z stretch-updates main contrib non-free
deb http://snapshot.debian.org/archive/debian-security/20190501T041322Z stretch/updates main contrib non-free

# deb-src http://deb.debian.org/debian/ stretch main contrib non-free

/etc/apt/apt.conf.d/80no_time_check

Acquire::Check-Valid-Until "0";

install old linux headers 4.8.0-9 , not old nvidia-driver

apt update
apt install linux-headers-4.9.0-9-amd64

Second variant - Debian CD/DVD

https://cdimage.debian.org/mirror/cdimage/archive/9.9.0/amd64/list-dvd/

debian-9.9.0-amd64-DVD-1

linux-headers-4.9.0-9-common_4.9.168-1_all.deb

linux-headers-4.9.0-9-amd64_4.9.168-1_amd64.deb

https://ftp.cae.tntech.edu/debian-cd/dvd/

Third variant - snapshot.debian.org

Continue with original Slax /etc/apt/sources.list

deb http://deb.debian.org/debian/ stretch main contrib non-free
deb http://deb.debian.org/debian/ stretch-updates main contrib non-free
deb http://security.debian.org/debian-security stretch/updates main contrib non-free

deb-src http://deb.debian.org/debian/ stretch main contrib non-free
apt update
dkms remove nvidia-current/390.116 --all
dkms install nvidia-current/390.116
dkms status
apt install nvidia-cuda-toolkit
apt install task-mate-desktop
savechanges 02-cuda.sb
modprobe nvidia-drm
modprobe nvidia
startx 

Applications

nvcc --ccbin clang-3.8 cuda-mini.cc -lstdc++
apt install freeglut3-dev libglew-dev
apt install build-essential qtbase5-dev qtcreator python3-pyqt5
(python3 view.py)

Other applications

apt install mate-desktop-environment

apt install firefox-esr

apt install qtcreator
apt install kdevelop kdevelop-dev kdevelop-php kdevelop-python

apt install libreoffice
apt install meld
apt install kate

apt install build-essential
apt install automake binutils-dev libltdl-dev
apt install libgtk2.0-dev 
apt install libgtk-3-dev
apt install libqt4-dev 
apt install qtbase5-dev

apt install python-qt4 
apt install python-pyqt5 
apt install python3-pyqt4 
apt install python3-pyqt5

apt install python-pyqt5.qtwebengine

Download all source packages

#!/bin/bash
mkdir source
cd source
dpkg --get-selections | while read line
do
        package=`echo $line | awk '{print $1}'`
        apt-get -q source --download-only $package
done

Grub 2

# file /boot/grub2/grub.cfg or /boot/grub/grub.cfg

# set root=(hd0,1)  # (hd0,1) ... sda1

# mkfs.ext4 -O ^has_journal /dev/sdx1
# tune2fs -l /dev/sdx1
# tune2fs -m 0 /dev/sdx1 # no reservered blocks

# mkdir /mnt/other
# mount /dev/sdx1 /mnt/other
# mkdir /mnt/other/dev
# mount --bind /dev /mnt/other/dev
# grub2-install /dev/sdx --boot-directory=/mnt/other/boot

set default=1
set timeout=60

set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue

# set menu_color_normal=white/blue
# set menu_color_highlight=yellow/red
# set color_normal=yellow/black
# set color_highlight=green/dark-gray
# menuentry "sda1 Microsoft Windows 7/8" {
# 	set root=(hd0,1)
# 	insmod part_msdos
# 	insmod ntfs
# 	insmod ntldr
# 	ntldr /bootmgr
# }

# menuentry "sda1 Microsoft Windows XP" {
# 	set root=(hd0,1)
# 	insmod part_msdos
# 	insmod ntfs
# 	insmod ntldr
# 	ntldr /ntldr
# }

menuentry "sda2 Windows" {
        insmod part_msdos
        insmod ntfs
        set root='hd0,msdos2'
        parttool ${root} hidden-
        drivemap -s (hd0) ${root}
        chainloader +1
}
menuentry "Grub from sda3" {
    set root=(hd1,3) # hd1 ... sda, when booting from second disk
    drivemap -s (hd0) (hd1)
    chainloader +1
}

menuentry "sda7 Fedora 34" {
    set root=(hd0,7)
    chainloader +1

    # configfile /boot/grub2/grub.cfg

    # linux  /boot/vmlinuz-5.11.12-300.fc34.x86_64 root=/dev/sda7 ro quiet
    # initrd /boot/initramfs-5.11.12-300.fc34.x86_64.img
}

BTRFS

menuentry "Arch Linux" {
    set root=(hd0,15)
    set dev="/dev/sda15"
    set vol="/archlinux-a"
    linux  $vol/boot/vmlinuz-linux root=$dev rootflags=subvol=$vol rw quiet
    initrd $vol/boot/initramfs-linux.img
}

menuentry "Debian 9 Stretch" {
    set root=(hd0,15)
    linux  /debian9/boot/vmlinuz-4.9.0-15-amd64 root=/dev/sda15 rootflags=subvol=/debian9 ro quiet
    initrd /debian9/boot/initrd.img-4.9.0-15-amd64
}

menuentry "Debian 10 Buster" {
    set root=(hd0,15)
    linux  /debian10/boot/vmlinuz-4.19.0-16-amd64 root=/dev/sda15 rootflags=subvol=/debian10 ro quiet
    initrd /debian10/boot/initrd.img-4.19.0-16-amd64
}

menuentry "Debian 11 Bullseye" {
    set root=(hd0,15)
    linux  /debian11/boot/vmlinuz-5.10.0-6-amd64 root=/dev/sda15 rootflags=subvol=/debian11 ro quiet
    initrd /debian11/boot/initrd.img-5.10.0-6-amd64
}

menuentry "Fedora 33" {
    set root=(hd0,15)
    set dev="/dev/sda15"
    set vol="/fedora33"
    set dir="$vol/boot"
    set ver="5.8.15-301.fc33.x86_64"
    linux  $dir/vmlinuz-$ver root=$dev rootflags=subvol=$vol ro rhgb quiet
    initrd $dir/initramfs-$ver.img
    # /etc/fstab  /dev/sda15  /  btrfs subvol=/fedora33 0 0
}

menuentry "Fedora 34" {
    set root=(hd0,15)
    set dev="/dev/sda15"
    set vol="/fedora34"
    set dir="$vol/boot"
    set ver="5.11.12-300.fc34.x86_64"
    linux  $dir/vmlinuz-$ver root=$dev rootflags=subvol=$vol ro rhgb quiet
    initrd $dir/initramfs-$ver.img
    # /etc/fstab  subvol=/fedora34
}

menuentry "Ubuntu 18.04" {
    set root=($sda,15)
    set dev="/dev/sda15"
    set vol="/ubuntu18.04-a"
    set dir="$vol/boot"
    set ver="5.4.0-48-generic"
    linux  $dir/vmlinuz-$ver root=$dev rootflags=subvol=$vol ro quiet
    initrd $dir/initrd.img-$ver
    # /etc/fstab  subvol=/ubuntu18.04-a    WITHOUT    errors=remount-ro
}

grep -i btrfs /boot/config-4.13.9-300.fc27.x86_64 

mkinitrd /boot/initramfs.img 4.13.9-300.fc27.x86_64 --force

lsinitrd initramfs-4.18.16-300.fc29.x86_64.img | grep nouveau
lsinitrd | grep btrfs

Install

menuentry "Install Arch Linux" {
	# set root=(hd0,1)
	set label="start"
	linux  /archlinux/vmlinuz-linux archisobasedir=archlinux archisolabel=$label
	initrd /archlinux/initramfs-linux.img
        # archisodevice=/dev/...
}

menuentry "Install Arch Linux (from iso)" {
	# set label="start"
	set device="/dev/..."
	set isofile="/boot/archlinux/archlinux-2022.05.01-x86_64.iso"
	loopback loop $isofile
	# linux (loop)/arch/boot/x86_64/vmlinuz-linux img_label=$label img_loop=$isofile earlymodules=loop
	linux (loop)/arch/boot/x86_64/vmlinuz-linux img_dev=$device img_loop=$isofile earlymodules=loop
	initrd (loop)/arch/boot/intel-ucode.img
	initrd (loop)/arch/boot/amd-ucode.img
	initrd (loop)/arch/boot/x86_64/initramfs-linux.img
}
menuentry "Install Debian 7 (32-bit)" {
	linux  /debian7/gtk/vmlinuz vga=788
 	initrd /debian7/gtk/initrd.gz
	# vmlinuz and initrd from ftp://.../dists/.../main/installer-i386/.../images/hd-media
	# .iso file in root directory on some disk partition
}

menuentry "Install Debian 8 (32-bit)" {
	linux  /debian8/gtk/vmlinux vga=788
	initrd /debian8/gtk/initrd.gz
	# linux and initrd.gz from ftp://.../dists/Debian8.11/main/installer-i386/current/images/netboot/gtk/debian-installer/i386
}

menuentry "Install Debian 9 (64-bit)" {
	linux  /debian9/gtk/linux vga=788
	initrd /debian9/gtk/initrd.gz
	# linux and initrd.gz from ftp://.../dists/Debian9.13/main/installer-amd64/current/images/netboot/gtk/debian-installer/amd64
}

menuentry "Install Debian 10 (64-bit)" {
	linux  /debian10/gtk/linux vga=788
	initrd /debian10/gtk/initrd.gz
	# linux and initrd.gz from ftp://.../dists/Debian10.9/main/installer-amd64/current/images/netboot/gtk/debian-installer/amd64
}
menuentry "Install Fedora 34 (64-bit)" {
    # set root=(hd0,1)
    set disk="sda3"
    linux  /fedora34/x86_64/isolinux/vmlinuz inst.repo=hd:$disk:/fedora34/x86_64 inst.ks=hd:$disk:/fedora34/x86_64/fedora34.ks
    initrd /fedora34/x86_64/isolinux/initrd.img
}
menuentry "Install Fedora 37" {
        set disk="hd:LABEL=start"
        set dir="/fedora37/x86_64"
        set ks="fedora37.ks"
        linux  $dir/images/pxeboot/vmlinuz inst.repo=$disk:$dir inst.ks=hd:$disk:$dir/$ks
        initrd $dir/images/pxeboot/initrd.img
}

From http://gist.github.com/hzhangxyz/c61447d5dd8720d3ae67794444c3dfe3

/EFI/Fedora/grub.cfg ( and grubx64.efi )

search --no-floppy --fs-uuid --set=dev aaaabbbb-cccc-dddd-eeee-ffffaaaabbbb
set prefix=($dev)/boot/grub2

export $prefix
configfile $prefix/grub.cfg

/EFI/Install/grub.cfg ( and grubx64.efi and images subdirectory from net-install)

menuentry 'Install Fedora 38' {
        linuxefi /EFI/Install/images/pxeboot/vmlinuz inst.stage2=hd:UUID=ABCD-ABCD:/EFI/Install
        initrdefi /EFI/Install/images/pxeboot/initrd.img
}

Fedora Live

menuentry "Fedora 38 Mate Live" {
        set iso_name="Fedora-MATE-Live-38-1-6"
        set iso_file="Fedora-MATE_Compiz-Live-x86_64-38-1.6.iso"
        loopback loop /$iso_file # only one slash
        linux (loop)/images/pxeboot/vmlinuz rd.live.image verbose root=live:LABEL=$iso_name iso-scan/filename=$iso_file
        initrd (loop)/images/pxeboot/initrd.img
}

menuentry "Fedora 38 LXQt Live" {
        set iso_name="Fedora-LXQt-Live-38-1-6"
        set iso_file="Fedora-LXQt-Live-x86_64-38-1.6.iso"
        loopback loop /$iso_file # only one slash
        # loopback loop (hdN,M)/$iso_file # only one slash
        linux (loop)/images/pxeboot/vmlinuz rd.live.image verbose root=live:LABEL=$iso_name iso-scan/filename=$iso_file
        initrd (loop)/images/pxeboot/initrd.img
}

http://man7.org/linux/man-pages/man7/dracut.cmdline.7.html

https://github.com/dracutdevs/dracut/blob/master/modules.d/90dmsquash-live/dmsquash-generator.sh#L5

iso-scan/filename=

Gentoo CD

menuentry "System Rescue CD 5.3.2 (64-bit)" {
   linux  /boot/sysrcd-5.3.2/rescue64 subdir=boot/sysrcd-5.3.2 setkmap=us docache ar_source=/dev/sdb1
   initrd /boot/sysrcd-5.3.2/initram.igz
}

Arch Linux CD

menuentry "System Rescue CD 6.0.3 (64-bit)" {
   set label="start"
   set dir="sysrcd-6.0.3"
   linux /boot/$dir/vmlinuz archisobasedir=boot/$dir archisolabel=$label copytoram
   initrd /boot/$dir/intel_ucode.img /boot/$dir/amd_ucode.img /boot/$dir/sysresccd.img
   # file in /boot/sysrcd-6.0.3/x86_64 : airootfs.sfs
   # file in /boot/sysrcd-6.0.3 : vmlinuz sysresccd.img intel_ucode.img amd_ucode.img
}

menuentry "System Rescue CD 8.0.3 (64-bit)" {
   set label="start"
   set dir="sysrcd-8.0.3"
   linux /boot/$dir/vmlinuz archisobasedir=boot/$dir archisolabel=$label copytoram
   initrd /boot/$dir/intel_ucode.img /boot/$dir/amd_ucode.img /boot/$dir/sysresccd.img
   # file in /boot/sysrcd-8.0.3/x86_64 : airootfs.sfs
   # file in /boot/sysrcd-8.0.3 : vmlinuz sysresccd.img intel_ucode.img amd_ucode.img
}

https://github.com/alfredopalhares/Archiso/blob/master/README

( cow_label=FS_LABEL or cow_device=/dev/DEVICE )

archisodevice=

Ubuntu

menuentry "Ubuntu Mate 18.04 (32-bit)" {
    set dir="/ubuntu-mate-18.04"
    linux $dir/casper/vmlinuz boot=casper iso-scan/filename=$dir layerfs-path=filesystem.prog.squashfs showmounts
    initrd $dir/casper/initrd
    # sudo umount -l -r -f /isodevice
    # files casper/filesystem.squashfs and casper/filesystem.prog.squashfs
}

menuentry "Ubuntu Mate 20.04" {
    set dir="/ubuntu-mate-20.04"
    linux $dir/casper/vmlinuz boot=casper iso-scan/filename=$dir showmounts
    initrd $dir/casper/initrd
    # linux $dir/casper/vmlinuz boot=casper iso-scan/filename=$dir layerfs-path=filesystem.prog.squashfs showmounts
    # sudo umount -l -r -f /isodevice
    # files casper/filesystem.squashfs and casper/filesystem.prog.squashfs
}

menuentry "Ubuntu Mate 20.04 (from iso)" {
    set dir="/ubuntu-mate-20.04-iso"
    set isofile="$dir/ubuntu-mate-20.04-desktop-amd64.iso"
    loopback loop $isofile
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile showmounts noprompt noeject
    initrd (loop)/casper/initrd
}

http://manpages.ubuntu.com/manpages/focal/en/man7/casper.7.html

( persistent, persistent-path )

live-media=

Debian Live

menuentry "Install Debian 9 (32-bit, from iso)" {
    set dir="/debian9-iso"
    set isofile="$dir/debian-live-9.0.0-i386-mate.iso"
    loopback loop $isofile
    set root=(loop)
    linux  /live/vmlinuz-4.9.0-3-686 boot=live components splash quiet findiso=$isofile
    initrd /live/initrd.img-4.9.0-3-686
}
menuentry "Debian 11 (from iso)" {
    set dir="/debian11-lxqt"
    set isofile="$dir/debian-live-11.4.0-i386-lxqt+nonfree.iso"
    loopback loop $isofile
    set root=(loop)
    linux  /live/vmlinuz-5.10.0-16-686 boot=live components splash quiet findiso=$isofile
    initrd /live/initrd.img-5.10.0-16-686
}

http://manpages.debian.org/bookworm/live-boot-doc/live-boot.7.en.html

fromiso=/dev/sda1/live/image.iso

fromiso=

Slax

OpenMandriva

Win 7

32-bit Win 7

Git-2.37.2.2-32-bit.exe

TortoiseGit-2.13.0.1-32bit.msi

SharpDevelop_5.1.0.5216_Xcopyable.zip

tcmdr702.exe

WinSCP-5.21.2-Setup.exe

7z2301.msi

Updates

http://servispckupka.cz/jak_reinstalovat_windows_7_dokonceni_nastaveni.php

aktualizaci KB3020369 a poté KB3125574, což je právě “Service Pack 2”

pro 32bitovou verzi Windows 7:

KB3020369 http://servispckupka.cz/data/windows-7/Windows6.1-KB3020369-x86.msu

“Service Pack 2” KB3125574 http://www.catalog.update.microsoft.com/Search.aspx?q=3125574

Notepad Plus Plus

Python

Qt Creator

MSYS

https://stackoverflow.com/questions/75660136/is-it-possible-to-install-msys2-in-windows-7

https://repo.msys2.org/distrib/msys2-i686-latest.tar.xz

https://forum.freecad.org/viewtopic.php?t=70782

https://github.com/nalexandru/api-ms-win-core-path-HACK/releases

GetSystemTimePreciseAsFileTime

https://stackoverflow.com/questions/70051785/is-it-possible-to-install-a-newer-version-of-kernel32-dll-into-win-7-x64-that-in

MSYS2 MinGW 32-bit ( C:\MSys32\msys2_shell.cmd -mingw32 )


pacman -Sy

pacman -S mingw32/mingw-w64-i686-ktexteditor-qt5

pacman -S mingw32/mingw-w64-i686-cmake 

pacman -S mingw32/mingw-w64-i686-extra-cmake-modules

pacman -S mingw32/mingw-w64-i686-gcc

pacman -S mingw32/mingw-w64-i686-kate

pacman -S mc

pacman -S mingw32/mingw-w64-i686-python

pacman -S mingw32/mingw-w64-i686-python-pyqt5

Arch Linux

boot

menuentry "Install Arch Linux" {
        # set label="start"
        set device="/dev/..."
        set isofile="/archlinux/archlinux-2022.12.01-x86_64.iso"
        loopback loop $isofile
        # linux (loop)/arch/boot/x86_64/vmlinuz-linux img_label=$label img_loop=$isofile earlymodules=loop
        linux (loop)/arch/boot/x86_64/vmlinuz-linux img_dev=$device img_loop=$isofile earlymodules=loop
        initrd (loop)/arch/boot/intel-ucode.img
        initrd (loop)/arch/boot/amd-ucode.img
        initrd (loop)/arch/boot/x86_64/initramfs-linux.img
}
menuentry "System Rescue CD 9.0.6 (64-bit)" {
        linux /sysrcd-9.0.6/vmlinuz archisolabel=start archisobasedir=sysrcd-9.0.6 copytoram
        # archisodevice=/dev/...
        initrd /sysrcd-9.0.6/intel_ucode.img /sysrcd-9.0.6/amd_ucode.img /sysrcd-9.0.6/sysresccd.img

        # files:
        #   x86_64/airootfs.sfs
        #   x86_64/airootfs.sha512
        #   amd_ucode.img
        #   intel_ucode.img
        #   sysresccd.img
        #   VERSION
        #   vmlinuz
}

mkfs

mkfs.ext4 /dev/... -L archlinux

mount

mount /dev/... /mnt

mkdir -p /mnt/boot/efi
mount /dev/... /mnt/boot/efi

mirrorlist

cat > /etc/pacman.d/mirrorlist << 'EOF'
Server = http://ftp.linux.cz/pub/linux/arch/$repo/os/$arch
Server = http://ftp.fi.muni.cz/pub/linux/arch/$repo/os/$arch
Server = http://ftp.uni-hannover.de/archlinux/$repo/os/$arch
EOF
# 'EOF' ... single quotes ... no variable substitution

wifi - iwctl

station list
station wlan0 connect inet

wifi - nmcli

nmcli device wifi connect ...network... password "...password..."

pacstrap

PACKAGES=""
PACKAGES="$PACKAGES base linux linux-firmware linux-headers"
PACKAGES="$PACKAGES mc sudo networkmanager"
PACKAGES="$PACKAGES grub efibootmgr"
PACKAGES="$PACKAGES xorg-server xorg-xinit xorg-drivers xorg-twm xterm mate mate-extra network-manager-applet"
PACKAGES="$PACKAGES openssh"
PACKAGES="$PACKAGES firefox"
PACKAGES="$PACKAGES man"

pacstrap /mnt $PACKAGES

fstab

genfstab -U /mnt >> /mnt/etc/fstab

echo "UUID=... /boot/efi auto defaults 0 0" >> /mnt/etc/fstab

arch-chroot /mnt

time

ln -sf /usr/share/zoneinfo/Europe/Prague /etc/localtime
hwclock --systohc

locale

# edit /etc/locale.gen and uncomment en_US.UTF-8 UTF-8
locale-gen

passwd

passwd

mkinitcpio

mkinitcpio -P

local grub

echo "GRUB_DISABLE_OS_PROBER=true" >> /etc/default/grub
# or edit /etc/grub.d/30_os-prober

grub-install --force /dev/...

mkdir -p /boot/efi
mount /dev/... /boot/efi
grub-install --target=x86_64-efi --efi-dir=/boot/efi --bootloader-id=ArchLinux

network

systemctl start NetworkManager
systemctl enable NetworkManager

packages

pacman -Syyu
# yy ... refresh repositories

pacman -S plocate
updatedb

startx mate

FILE="/etc/X11/xinit/xinitrc.d/80-mate.sh"
echo "exec mate-session" > $FILE
chmod +x $FILE

Debian

https://www.debian.org/releases/stable/amd64/apds03.en.html

https://www.debian.org/releases/bookworm/amd64/apds03.en.html

https://www.debian.org/releases/bullseye/amd64/apds03.en.html

https://www.debian.org/releases/buster/amd64/apds03.en.html

https://www.debian.org/releases/stretch/amd64/release-notes.en.txt

ROOT_DIR="/mnt/..."
DEBIAN_URL="http://ftp.cz.debian.org/debian"

# pacman -S debootstrap

PACKAGES="mc"
PACKAGES="$PACKAGES,linux-image-amd64"
PACKAGES="$PACKAGES,linux-headers-amd64"
PACKAGES="$PACKAGES,grub-pc"

PACKAGES="$PACKAGES,task-mate-desktop"
PACKAGES="$PACKAGES,firefox-esr"

# PACKAGES="$PACKAGES libreoffice"

PACKAGES="$PACKAGES,kate"
PACKAGES="$PACKAGES,kompare"
PACKAGES="$PACKAGES,meld"

PACKAGES="$PACKAGES,kdevelop,kdevelop-dev"
PACKAGES="$PACKAGES,qtcreator"

PACKAGES="$PACKAGES,build-essential"
PACKAGES="$PACKAGES,automake,binutils-dev,libltdl-dev"
PACKAGES="$PACKAGES,libgtk2.0-dev,libgtk-3-dev"
PACKAGES="$PACKAGES,qtbase5-dev"
PACKAGES="$PACKAGES,python3-pyqt5"
PACKAGES="$PACKAGES,python3-pyqt5.qtwebengine"

if true ; then

debootstrap --arch=amd64 --include=$PACKAGES bookworm $ROOT_DIR $DEBIAN_URL

genfstab -U $ROOT_DIR >> $ROOT_DIR/etc/fstab

echo "allow-hotplug enp7s0" >> $ROOT_DIR/etc/network/interfaces
echo "iface enp7s0 inet dhcp" >> $ROOT_DIR/etc/network/interfaces

fi

cp start-debian.sh $ROOT_DIR
chroot $ROOT_DIR /bin/bash start-debian.sh
debootstrap --arch=i386 --include mc,grub,kernel-image-2.4.16-386 woody /mnt/other
debootstrap --arch=i386 --include mc,grub,kernel-image-2.6.8-4-686 sarge /mnt/other

Antix

Fedora

#!/bin/sh

RELEASE_VER=39
# KEY_DIR="..../etc/pki/rpm-gpg"
KEY_DIR="keys"
# ROOT_DIR="root"
ROOT_DIR="/mnt/..."
FROM_DIR="/mnt/.../install/fedora39"

# pacman -S dnf ;)
# https://glacion.com/2019/06/16/Fedora.html
# https://glacion.com/2021/02/01/Fedora.html

# ---------------------------------------------------------------------------

PACKAGES=""
PACKAGES="$PACKAGES @admin-tools"
PACKAGES="$PACKAGES @base-x"
PACKAGES="$PACKAGES @core"
PACKAGES="$PACKAGES @dial-up"
PACKAGES="$PACKAGES @fonts"
PACKAGES="$PACKAGES @guest-desktop-agents"
PACKAGES="$PACKAGES @hardware-support"
PACKAGES="$PACKAGES @input-methods"
PACKAGES="$PACKAGES @multimedia"
PACKAGES="$PACKAGES @networkmanager-submodules"
PACKAGES="$PACKAGES @printing"
PACKAGES="$PACKAGES @standard"

PACKAGES="$PACKAGES @mate-desktop-environment"
PACKAGES="$PACKAGES @mate-desktop"

PACKAGES="$PACKAGES @firefox"
PACKAGES="$PACKAGES mc"
PACKAGES="$PACKAGES grub2-pc"

# ---------------------------------------------------------------------------

# PACKAGES="@standard kernel-core mc grub2-pc"

# ---------------------------------------------------------------------------

# OPTIONS="--setopt=install_weak_deps=False --nodocs"

# PACKAGES=""
# PACKAGES="$PACKAGES systemd dnf glibc-langpack-en passwd rtkit policycoreutils"
# PACKAGES="$PACKAGES NetworkManager audit firewalld selinux-policy-targeted kbd sudo"
# PACKAGES="$PACKAGES vim-minimal systemd-udev rootfiles less iputils deltarpm sqlite"

# ---------------------------------------------------------------------------

FROM_ABS_DIR=`cd $FROM_DIR; pwd`
REPO_SPEC="file://$FROM_ABS_DIR"

mkdir -p $ROOT_DIR
ROOT_ABS_DIR=`cd $ROOT_DIR; pwd`

mkdir -p $ROOT_DIR/etc
mkdir -p $ROOT_DIR/etc/yum.repos.d # empty directory, prevent using global /etc/yum.repos.d

rpmkeys --root=$ROOT_ABS_DIR --import $KEY_DIR/*$RELEASE_VER*

dnf install --installroot=$ROOT_ABS_DIR --repofrompath abc,$REPO_SPEC --releasever=$RELEASE_VER $OPTIONS $PACKAGES


# ---------------------------------------------------------------------------

systemd-firstboot \
   --root=$ROOT_DIR \
   --locale=en_US.UTF-8 \
   --timezone=Europe/Prague \
   --keymap=us \
   --hostname=pc \
   --setup-machine-id

genfstab -U $ROOT_DIR >> $ROOT_DIR/etc/fstab

cp start.sh $ROOT_DIR
systemd-nspawn -D $ROOT_DIR /bin/sh start.sh

# Chroot without booting and add an user
# systemd-nspawn -D $ROOT_DIR

# Boot the system as a container
# systemd-nspawn -b -D $ROOT_DIR

Boot: linux … root=/dev/sdXY ro selinux=0

menuentry "Fedora 39" {
    set root=(hdX,Y)
    linux  /boot/vmlinuz-6.5.6-300.fc39.x86_64 root=/dev/sdXY ro quiet selinux=0
    initrd /boot/initramfs-6.5.6-300.fc39.x86_64.img
}
DOWNLOAD_DIR="download"
REPO="http://ftp.linux.cz/pub/linux/fedora/linux/releases/39/Everything/x86_64/os"

dnf install \
    --releasever=39 \
    --repofrompath abc,$REPO \
    --nogpgcheck \
    --downloadonly \
    --downloaddir=$DOWNLOAD_DIR \
    $PACKAGES
 
peri/peri.txt · Last modified: 2024/05/04 23:25 by 88.103.111.44
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki