Compare commits
4 commits
b9fe7a572c
...
40844e763d
Author | SHA1 | Date | |
---|---|---|---|
timoxa0 | 40844e763d | ||
timoxa0 | 0aab95dd43 | ||
timoxa0 | a945145e04 | ||
timoxa0 | 965afbe2ad |
|
@ -50,6 +50,10 @@ log "Removing default kernel and settings"
|
|||
chroot "$rootdir" userdel -r alarm
|
||||
chroot "$rootdir" pacman -R linux-aarch64 linux-firmware --noconfirm
|
||||
|
||||
# Add custom mirrorlist
|
||||
log "Adding mirrorlist"
|
||||
cp ./drop/mirrorlist "$rootdir/etc/pacman.d/mirrorlist"
|
||||
|
||||
# Install minimal desktop environment
|
||||
log "Populating pacman key store"
|
||||
chroot "$rootdir" pacman-key --init
|
||||
|
@ -59,7 +63,7 @@ chroot "$rootdir" sed -i "s/#ParallelDownloads/ParallelDownloads/g" /etc/pacman.
|
|||
log "Update key store"
|
||||
chroot "$rootdir" pacman -Sy archlinux-keyring archlinuxarm-keyring --noconfirm
|
||||
log "Updating system and installing needed packages"
|
||||
chroot "$rootdir" pacman -Syu sudo bluez bluez-utils vulkan-freedreno networkmanager --noconfirm
|
||||
chroot "$rootdir" pacman -Syu sudo bluez bluez-utils vulkan-freedreno networkmanager zram-generator --noconfirm
|
||||
|
||||
# Install nabu specific packages
|
||||
log "Installing nabu kernel, modules, firmwares and userspace daemons"
|
||||
|
@ -69,7 +73,7 @@ rm "$rootdir"/opt/*.zst
|
|||
|
||||
# Enable userspace daemons
|
||||
log "Enabling userspace daemons"
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs bluetooth NetworkManager
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs bluetooth NetworkManager systemd-zram-setup@zram0.service
|
||||
|
||||
# Clean pacman cache
|
||||
log "Cleaning pacman cache"
|
||||
|
@ -84,7 +88,7 @@ cp ./drop/00_image_builder "$rootdir/etc/sudoers.d/00_image_builder"
|
|||
|
||||
# Enable zram
|
||||
log "Enabling zram"
|
||||
cp ./drop/99-zram.rules "$rootdir/etc/udev/rules.d/99-zram.rules"
|
||||
cp ./drop/zram-generator.conf "$rootdir/etc/systemd/zram-generator.conf"
|
||||
|
||||
# Generate en_US locale
|
||||
log "Generating en_US locale"
|
||||
|
|
|
@ -44,6 +44,10 @@ log "Removing default kernel and settings"
|
|||
chroot "$rootdir" userdel -r alarm
|
||||
chroot "$rootdir" pacman -R linux-aarch64 linux-firmware --noconfirm
|
||||
|
||||
# Add custom mirrorlist
|
||||
log "Adding mirrorlist"
|
||||
cp ./drop/mirrorlist "$rootdir/etc/pacman.d/mirrorlist"
|
||||
|
||||
# Install minimal desktop environment
|
||||
log "Populating pacman key store"
|
||||
chroot "$rootdir" pacman-key --init
|
||||
|
@ -53,7 +57,7 @@ chroot "$rootdir" sed -i "s/#ParallelDownloads/ParallelDownloads/g" /etc/pacman.
|
|||
log "Update key store"
|
||||
chroot "$rootdir" pacman -Sy archlinux-keyring archlinuxarm-keyring --noconfirm
|
||||
log "Updating system and installing needed packages"
|
||||
chroot "$rootdir" pacman -Syu sudo gdm gnome-menus gnome-backgrounds gnome-control-center gnome-keyring xdg-user-dirs-gtk nautilus xdg-desktop-portal-gnome gnome-console bluez bluez-utils vulkan-freedreno networkmanager --noconfirm
|
||||
chroot "$rootdir" pacman -Syu sudo gdm gnome-menus gnome-backgrounds gnome-control-center gnome-keyring xdg-user-dirs-gtk nautilus xdg-desktop-portal-gnome gnome-console bluez bluez-utils vulkan-freedreno networkmanager zram-generator --noconfirm
|
||||
|
||||
# Install nabu specific packages
|
||||
log "Installing nabu kernel, modules, firmwares and userspace daemons"
|
||||
|
@ -63,7 +67,7 @@ rm "$rootdir"/opt/*.zst
|
|||
|
||||
# Enable userspace daemons
|
||||
log "Enabling userspace daemons"
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs gdm bluetooth NetworkManager
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs gdm bluetooth NetworkManager systemd-zram-setup@zram0.service
|
||||
|
||||
# Clean pacman cache
|
||||
log "Cleaning pacman cache"
|
||||
|
@ -78,7 +82,7 @@ cp ./drop/00_image_builder "$rootdir/etc/sudoers.d/00_image_builder"
|
|||
|
||||
# Enable zram
|
||||
log "Enabling zram"
|
||||
cp ./drop/99-zram.rules "$rootdir/etc/udev/rules.d/99-zram.rules"
|
||||
cp ./drop/zram-generator.conf "$rootdir/etc/systemd/zram-generator.conf"
|
||||
|
||||
# Generate en_US locale
|
||||
log "Generating en_US locale"
|
||||
|
|
|
@ -44,6 +44,10 @@ log "Removing default kernel and settings"
|
|||
chroot "$rootdir" userdel -r alarm
|
||||
chroot "$rootdir" pacman -R linux-aarch64 linux-firmware --noconfirm
|
||||
|
||||
# Add custom mirrorlist
|
||||
log "Adding mirrorlist"
|
||||
cp ./drop/mirrorlist "$rootdir/etc/pacman.d/mirrorlist"
|
||||
|
||||
# Install minimal desktop environment
|
||||
log "Populating pacman key store"
|
||||
chroot "$rootdir" pacman-key --init
|
||||
|
@ -53,7 +57,7 @@ chroot "$rootdir" sed -i "s/#ParallelDownloads/ParallelDownloads/g" /etc/pacman.
|
|||
log "Update key store"
|
||||
chroot "$rootdir" pacman -Sy archlinux-keyring archlinuxarm-keyring --noconfirm
|
||||
log "Updating system and installing needed packages"
|
||||
chroot "$rootdir" pacman -Syu sudo plasma grub konsole dolphin ark bluez bluez-utils xorg-xrandr xorg-xinput qt5-virtualkeyboard vulkan-freedreno networkmanager --noconfirm
|
||||
chroot "$rootdir" pacman -Syu sudo plasma grub konsole dolphin ark bluez bluez-utils xorg-xrandr xorg-xinput qt5-virtualkeyboard vulkan-freedreno networkmanager zram-generator --noconfirm
|
||||
|
||||
# Install nabu specific packages
|
||||
log "Installing nabu kernel, modules, firmwares and userspace daemons"
|
||||
|
@ -63,7 +67,7 @@ rm "$rootdir"/opt/*.zst
|
|||
|
||||
# Enable userspace daemons
|
||||
log "Enabling userspace daemons"
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs sddm bluetooth NetworkManager
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs sddm bluetooth NetworkManager systemd-zram-setup@zram0.service
|
||||
|
||||
# Clean pacman cache
|
||||
log "Cleaning pacman cache"
|
||||
|
@ -78,7 +82,7 @@ cp ./drop/00_image_builder "$rootdir/etc/sudoers.d/00_image_builder"
|
|||
|
||||
# Enable zram
|
||||
log "Enabling zram"
|
||||
cp ./drop/99-zram.rules "$rootdir/etc/udev/rules.d/99-zram.rules"
|
||||
cp ./drop/zram-generator.conf "$rootdir/etc/systemd/zram-generator.conf"
|
||||
|
||||
# Generate en_US locale
|
||||
log "Generating en_US locale"
|
||||
|
|
123
buildDebianGnome.sh
Executable file
123
buildDebianGnome.sh
Executable file
|
@ -0,0 +1,123 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Restart as root
|
||||
if [ "$(id -u)" != "0" ]; then
|
||||
sudo -E "$0" "$@"
|
||||
exit $?
|
||||
fi
|
||||
|
||||
source common.sh
|
||||
|
||||
# Ensure that debootstarp is installed
|
||||
which debootstrap > /dev/null 2>&1 || {
|
||||
log_err "debootstrap not found"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Settings
|
||||
VERSION="bookworm"
|
||||
IMAGE_NAME="Debian12Gnome"
|
||||
|
||||
# Begin script
|
||||
|
||||
log "Start creating image: $IMAGE_NAME"
|
||||
create_image "$IMAGE_NAME"
|
||||
rootdir="$(mount_image "$IMAGE_NAME")"
|
||||
|
||||
# Fetch base system
|
||||
log "Fetching base system"
|
||||
debootstrap --arch arm64 --exclude=pulseaudio "$VERSION" "$rootdir" || {
|
||||
detach_chroot "$rootdir"
|
||||
umount_image "$rootdir"
|
||||
rm "$IMAGE_NAME"
|
||||
rm -rf "$rootdir"
|
||||
exit 1
|
||||
}
|
||||
|
||||
prepare_chroot "$rootdir"
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Setup inet
|
||||
log "Setting up chroot"
|
||||
echo "nameserver 1.1.1.1" > "$rootdir/etc/resolv.conf"
|
||||
echo "xiaomi-nabu" > "$rootdir/etc/hostname"
|
||||
echo "127.0.0.1 localhost
|
||||
127.0.1.1 xiaomi-nabu" > "$rootdir/etc/hosts"
|
||||
|
||||
# Update system and install desktop
|
||||
log "Updating system and installing needed packages"
|
||||
chroot "$rootdir" apt update
|
||||
chroot "$rootdir" apt upgrade -y
|
||||
chroot "$rootdir" apt install -y gnome-core bash-completion sudo ssh nano systemd-zram-generator
|
||||
|
||||
# Install nabu specific packages
|
||||
log "Installing nabu kernel, modules, firmwares and userspace daemons"
|
||||
cp ./packages/*.deb "$rootdir/opt/"
|
||||
chroot "$rootdir" bash -c "dpkg -i /opt/*.deb"
|
||||
chroot "$rootdir" bash -c "rm /opt/*.deb"
|
||||
|
||||
# Clean apt cache
|
||||
log "Cleaning apt cache"
|
||||
chroot "$rootdir" apt clean
|
||||
|
||||
# Configure dynamic linker run-time bindings
|
||||
log "Configuring dynamic linker run-time bindings"
|
||||
chroot "$rootdir" ldconfig
|
||||
|
||||
# Enable userspace daemons
|
||||
log "Generating fstab"
|
||||
log "Enabling userspace daemons"
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs systemd-zram-setup@zram0.service
|
||||
|
||||
gen_fstab "$rootdir"
|
||||
|
||||
# Enable zram
|
||||
log "Enabling zram"
|
||||
cp ./drop/zram-generator.conf "$rootdir/etc/systemd/zram-generator.conf"
|
||||
|
||||
# +++ Rotate gdm
|
||||
log "Configuring gdm and gnome"
|
||||
mkdir -p "$rootdir/etc/skel/.config"
|
||||
echo '<monitors version="2">
|
||||
<configuration>
|
||||
<logicalmonitor>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<scale>2</scale>
|
||||
<primary>yes</primary>
|
||||
<transform>
|
||||
<rotation>right</rotation>
|
||||
<flipped>no</flipped>
|
||||
</transform>
|
||||
<monitor>
|
||||
<monitorspec>
|
||||
<connector>DSI-1</connector>
|
||||
<vendor>unknown</vendor>
|
||||
<product>unknown</product>
|
||||
<serial>unknown</serial>
|
||||
</monitorspec>
|
||||
<mode>
|
||||
<width>1600</width>
|
||||
<height>2560</height>
|
||||
<rate>104.000</rate>
|
||||
</mode>
|
||||
</monitor>
|
||||
</logicalmonitor>
|
||||
</configuration>
|
||||
</monitors>
|
||||
' > "$rootdir/etc/skel/.config/monitors.xml"
|
||||
chroot "$rootdir" bash -c 'mkdir ~Debian-gdm/.config/'
|
||||
chroot "$rootdir" bash -c 'chown Debian-gdm: ~Debian-gdm/.config/'
|
||||
chroot "$rootdir" bash -c 'chmod 700 ~Debian-gdm/.config'
|
||||
chroot "$rootdir" bash -c 'cp /etc/skel/.config/monitors.xml ~Debian-gdm/.config/'
|
||||
chroot "$rootdir" bash -c 'chmod 644 ~Debian-gdm/.config/monitors.xml'
|
||||
chroot "$rootdir" bash -c 'chown Debian-gdm: ~Debian-gdm/.config/monitors.xml'
|
||||
# ---
|
||||
|
||||
# Finish image
|
||||
log "Finishing image"
|
||||
detach_chroot "$rootdir"
|
||||
umount_image "$rootdir"
|
||||
trim_image "$IMAGE_NAME"
|
||||
|
||||
log "Stop creating image: $IMAGE_NAME"
|
|
@ -89,7 +89,7 @@ cp ./drop/00_image_builder "$rootdir/etc/sudoers.d/00_image_builder"
|
|||
|
||||
# Enable zram
|
||||
log "Enabling zram"
|
||||
cp ./drop/99-zram.rules "$rootdir/etc/udev/rules.d/99-zram.rules"
|
||||
cp ./drop/zram-generator.conf "$rootdir/etc/systemd/zram-generator.conf"
|
||||
|
||||
# +++ Rotate gdm
|
||||
log "Configuring gdm and gnome"
|
||||
|
|
|
@ -48,7 +48,7 @@ echo "127.0.0.1 localhost
|
|||
log "Updating system and installing needed packages"
|
||||
chroot "$rootdir" apt update
|
||||
chroot "$rootdir" apt upgrade -y
|
||||
chroot "$rootdir" apt install -y ubuntu-desktop bash-completion sudo ssh nano
|
||||
chroot "$rootdir" apt install -y ubuntu-desktop bash-completion sudo ssh nano rust-zram-generator
|
||||
|
||||
# Install nabu specific packages
|
||||
log "Installing nabu kernel, modules, firmwares and userspace daemons"
|
||||
|
@ -57,19 +57,19 @@ chroot "$rootdir" bash -c "dpkg -i /opt/*.deb"
|
|||
chroot "$rootdir" bash -c "rm /opt/*.deb"
|
||||
|
||||
# Clean apt cache
|
||||
log "Cleaning pacman cache"
|
||||
log "Cleaning apt cache"
|
||||
chroot "$rootdir" apt clean
|
||||
|
||||
# Enable userspace daemons
|
||||
log "Generating fstab"
|
||||
log "Enabling userspace daemons"
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs
|
||||
chroot "$rootdir" systemctl enable qrtr-ns pd-mapper tqftpserv rmtfs systemd-zram-setup@zram0.service
|
||||
|
||||
gen_fstab "$rootdir"
|
||||
|
||||
# Enable zram
|
||||
log "Enabling zram"
|
||||
cp ./drop/99-zram.rules "$rootdir/etc/udev/rules.d/99-zram.rules"
|
||||
cp ./drop/zram-generator.conf "$rootdir/etc/systemd/zram-generator.conf"
|
||||
|
||||
# +++ Rotate gdm
|
||||
log "Configuring gdm and gnome"
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
# /etc/udev/rules.d/99-zram.rules
|
||||
ACTION=="add", KERNEL=="zram0", ATTR{comp_algorithm}="zstd", ATTR{disksize}="4G", RUN="/usr/bin/mkswap -U clear /dev/%k", TAG+="systemd"
|
59
drop/mirrorlist
Normal file
59
drop/mirrorlist
Normal file
|
@ -0,0 +1,59 @@
|
|||
# /etc/pacman.d/mirrorlist
|
||||
# ALArm only
|
||||
#
|
||||
# Arch Linux ARM repository mirrorlist
|
||||
# Generated on 2023-02-06
|
||||
#
|
||||
|
||||
### Mirrors by country
|
||||
|
||||
### Denmark
|
||||
## Aalborg
|
||||
# Server = http://dk.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### Germany
|
||||
## Aachen
|
||||
# Server = http://de3.mirror.archlinuxarm.org/$arch/$repo
|
||||
## Berlin
|
||||
# Server = http://de.mirror.archlinuxarm.org/$arch/$repo
|
||||
## Coburg
|
||||
# Server = http://de4.mirror.archlinuxarm.org/$arch/$repo
|
||||
## Falkenstein
|
||||
Server = http://eu.mirror.archlinuxarm.org/$arch/$repo
|
||||
# Server = http://de5.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### Greece
|
||||
## Athens
|
||||
# Server = http://gr.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### Hungary
|
||||
## Budapest
|
||||
# Server = http://hu.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### Japan
|
||||
## Tokyo
|
||||
# Server = http://jp.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### Singapore
|
||||
# Server = http://sg.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### Taiwan
|
||||
## Hsinchu
|
||||
# Server = http://tw2.mirror.archlinuxarm.org/$arch/$repo
|
||||
## New Taipei City
|
||||
# Server = http://tw.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### United Kingdom
|
||||
## London
|
||||
# Server = http://uk.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
### United States
|
||||
## California
|
||||
# Server = http://ca.us.mirror.archlinuxarm.org/$arch/$repo
|
||||
## Florida
|
||||
# Server = http://fl.us.mirror.archlinuxarm.org/$arch/$repo
|
||||
## New Jersey
|
||||
# Server = http://nj.us.mirror.archlinuxarm.org/$arch/$repo
|
||||
|
||||
## Geo-IP based mirror selection and load balancing
|
||||
Server = http://mirror.archlinuxarm.org/$arch/$repo
|
3
drop/zram-generator.conf
Normal file
3
drop/zram-generator.conf
Normal file
|
@ -0,0 +1,3 @@
|
|||
# /etc/systemd/zram-generator.conf
|
||||
[zram0]
|
||||
zram-size = ram
|
Loading…
Reference in a new issue