From e0c93997e2bb6cd6e1fd42acb7996fcee2dd889c Mon Sep 17 00:00:00 2001 From: lif Date: Wed, 22 Apr 2026 23:23:40 +0100 Subject: [PATCH] initial --- Makefile | 6 ++ config.json | 143 ++++++++++++++++++++++++++++ creds.json | 1 + install.sh | 12 +++ packages/aur-pkgs.txt | 52 +++++++++++ packages/pkgs.txt | 212 ++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 426 insertions(+) create mode 100644 Makefile create mode 100644 config.json create mode 100644 creds.json create mode 100644 install.sh create mode 100644 packages/aur-pkgs.txt create mode 100644 packages/pkgs.txt diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..dfc4431 --- /dev/null +++ b/Makefile @@ -0,0 +1,6 @@ +pkg: + # explicitly installed packages from official repos only + pacman -Qqen > ./packages/pkgs.txt + + # explicitly installed AUR/foreign packages only + pacman -Qqem > ./packages/aur-pkgs.txt diff --git a/config.json b/config.json new file mode 100644 index 0000000..28486ee --- /dev/null +++ b/config.json @@ -0,0 +1,143 @@ +{ + "app_config": {}, + "archinstall-language": "English", + "auth_config": {}, + "bootloader": "Grub", + "custom_commands": [], + "disk_config": { + "btrfs_options": { + "snapshot_config": null + }, + "config_type": "default_layout", + "device_modifications": [ + { + "device": "/dev/sda", + "partitions": [ + { + "btrfs": [], + "dev_path": null, + "flags": [ + "boot" + ], + "fs_type": "fat32", + "mount_options": [], + "mountpoint": "/boot", + "obj_id": "ff0e6d76-46ae-40f2-b068-a024dc758064", + "size": { + "sector_size": { + "unit": "B", + "value": 512 + }, + "unit": "GiB", + "value": 1 + }, + "start": { + "sector_size": { + "unit": "B", + "value": 512 + }, + "unit": "MiB", + "value": 1 + }, + "status": "create", + "type": "primary" + }, + { + "btrfs": [], + "dev_path": null, + "flags": [], + "fs_type": "ext4", + "mount_options": [], + "mountpoint": "/", + "obj_id": "c96a2393-da1e-4876-94ba-d00db400abf0", + "size": { + "sector_size": { + "unit": "B", + "value": 512 + }, + "unit": "B", + "value": 7515144192 + }, + "start": { + "sector_size": { + "unit": "B", + "value": 512 + }, + "unit": "B", + "value": 1074790400 + }, + "status": "create", + "type": "primary" + } + ], + "wipe": true + } + ] + }, + "hostname": "archlinux", + "kernels": [ + "linux" + ], + "locale_config": { + "kb_layout": "us", + "sys_enc": "UTF-8", + "sys_lang": "en_US.UTF-8" + }, + "mirror_config": { + "custom_repositories": [], + "custom_servers": [], + "mirror_regions": { + "United Kingdom": [ + "http://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/$arch", + "https://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/$arch", + "http://lon.mirror.rackspace.com/archlinux/$repo/os/$arch", + "https://lon.mirror.rackspace.com/archlinux/$repo/os/$arch", + "http://gb.mirrors.cicku.me/archlinux/$repo/os/$arch", + "https://gb.mirrors.cicku.me/archlinux/$repo/os/$arch", + "http://mirrors.ukfast.co.uk/sites/archlinux.org/$repo/os/$arch", + "https://mirrors.ukfast.co.uk/sites/archlinux.org/$repo/os/$arch", + "http://archlinux.uk.mirror.allworldit.com/archlinux/$repo/os/$arch", + "https://archlinux.uk.mirror.allworldit.com/archlinux/$repo/os/$arch", + "http://mirrors.melbourne.co.uk/archlinux/$repo/os/$arch", + "https://mirrors.melbourne.co.uk/archlinux/$repo/os/$arch", + "http://mirror.cov.ukservers.com/archlinux/$repo/os/$arch", + "https://mirror.cov.ukservers.com/archlinux/$repo/os/$arch", + "https://london.mirror.pkgbuild.com/$repo/os/$arch", + "https://repo.slithery.uk/$repo/os/$arch", + "https://mirror.st2projects.com/archlinux/$repo/os/$arch", + "https://uk.arch.niranjan.co/$repo/os/$arch", + "http://mirror.server.net/archlinux/$repo/os/$arch", + "https://mirror.server.net/archlinux/$repo/os/$arch", + "https://repo.c48.uk/arch/$repo/os/$arch", + "https://uk.repo.c48.uk/arch/$repo/os/$arch" + ] + }, + "optional_repositories": [] + }, + "network_config": { + "type": "iso" + }, + "ntp": true, + "packages": [], + "parallel_downloads": 0, + "profile_config": { + "gfx_driver": "All open-source", + "greeter": "sddm", + "profile": { + "custom_settings": { + "Hyprland": { + "seat_access": "polkit" + } + }, + "details": [ + "Hyprland" + ], + "main": "Desktop" + } + }, + "script": null, + "services": [], + "swap": true, + "timezone": "UTC", + "version": "3.0.11" +} diff --git a/creds.json b/creds.json new file mode 100644 index 0000000..b106ca8 --- /dev/null +++ b/creds.json @@ -0,0 +1 @@ +$argon2id$oR564ik1TpHfolsJZfhtLA==$Z0FBQUFBQnA2VWsxdVZ1ZjhFMUJDUWZiTG0xQWdJNlFSeDRlQlBUVjdUdkpoVGN5MG53NW14bDNGNmVITklwZG5wRnE3ZElUMHU1S3h2S254WUZlVzAwLWFDMDJ5UThYckNEbzV1Sk44d1NuYmozNjFSUVBoNFRoTWp3SzVQLVEySWZkak00bmpKeFhsUl9pc0FJQ3A3RHhNMG5OVzBZVG02ci1YNUo4UE5ITElrSXJqeExacXZkTzFkblNJcmRraFkzZXp0Si1kNGdOOWNENm52OGJ3YlpyX0JUaGUyREFESTU0QVE5ODR0U3pFTlNSQllXem40MnNhZjZwcFFZRFU5dUVZUWJZUjN3S2d1NzlfaDFIOHVjR1JrS19FMUc1c3hheDBhSG5PX29sT25YSWxyRkFpZThodkQ0eFpETmhXQ1FndTRSOVd3YmlVSnpKV1Y4OG5DTHJVOS11WUZzSDhMb3lXbHBsaXB4Zi1xc0E2Nnd6NkJFMUFFV1JzUEszQWphREwzQ3hkYTc5RTF0bURXeWRNWFNKNVhEcUtWOWYxQTdVOGI1ZUJ3amZkdi03cE9fTHdRWExkbUI3bko3YnBYLTR5WFNTdGtxcFZnSFhhQUM1TTk2MThhcXdiTVBmQ2hzZVNiUG5nakVOT3BPN0RzSU9wN3FWSzAtN29DQ29zc1haVmtWN2FnTEI= diff --git a/install.sh b/install.sh new file mode 100644 index 0000000..1a129ff --- /dev/null +++ b/install.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash +# run from the arch live image as root +# requires config.json and creds.json in the same directory + +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" + +archinstall \ + --config "$SCRIPT_DIR/config.json" \ + --creds "$SCRIPT_DIR/creds.json" \ + --silent diff --git a/packages/aur-pkgs.txt b/packages/aur-pkgs.txt new file mode 100644 index 0000000..89f9095 --- /dev/null +++ b/packages/aur-pkgs.txt @@ -0,0 +1,52 @@ +android-studio +aws-sam-cli-bin +barrier +blobdrop-git +bruno-bin +cheese +cinny-desktop-bin +claude-code +claude-desktop-bin +cpuminer-multi +curseforge-bin +cursor-bin +emulationstation-de +eww +exif +geekbench +google-chrome +google-cloud-cli +gtk-engine-murrine +heroic-games-launcher-bin +htpasswd +iamb +lagrange +librewolf-bin +lightdm-mini-greeter +matugen-bin +mpremote +mullvad-vpn-bin +neofetch +noctalia-shell +ntfydesktop +ntfysh-bin +parsec-bin +paru +pegasus-frontend-git +picotool +pokemon-colorscripts-git +qimgv +quickemu +react-native-debugger-bin +reactotron +slack-desktop +synergy +tfenv +thonny +vagrant +vscodium-bin +webcamoid +xf86-video-vmware +yay +yt-dlp-git +zen-browser-bin diff --git a/packages/pkgs.txt b/packages/pkgs.txt new file mode 100644 index 0000000..1fa7621 --- /dev/null +++ b/packages/pkgs.txt @@ -0,0 +1,212 @@ +7zip +alsa-utils +amd-ucode +amfora +android-tools +ansible +arandr +arduino-cli +atuin +audacity +aws-cli +base +base-devel +bat +bind +blueman +bluez-utils +brightnessctl +btop +calibre +cava +cfitsio +chromium +cmus +cpio +darktable +dart-sass +delve +discord +dmenu +docker +docker-buildx +docker-compose +dolphin +dosfstools +dotnet-sdk +efibootmgr +element-desktop +entr +eza +fastfetch +feh +ffmpegthumbnailer +firefox-tridactyl +fish +flatpak +fwupd +fzf +ghostscript +ghostty +gimp +git +gjs +glow +godot +golangci-lint +gparted +gst-plugin-pipewire +hdf5 +htop +hugo +hyprland +hyprpaper +hyprshot +i3-wm +i3blocks +i3lock +i3status +input-leap +intel-media-driver +iwd +jdk17-openjdk +jq +jre11-openjdk +kitty +ksnip +kubectl +less +lib32-alsa-lib +lib32-alsa-plugins +lib32-freetype2 +lib32-libpulse +lib32-mesa +lib32-mpg123 +lib32-openal +lib32-vulkan-icd-loader +lib32-vulkan-radeon +libpulse +libva-intel-driver +libvncserver +lightdm +lightdm-gtk-greeter +linux +linux-firmware +lolcat +lsof +luarocks +lutris +lynx +mame +man-db +minicom +monero-gui +mumble +mumble-server +nano +nautilus +ncdu +nemo +neovim +net-tools +network-manager-applet +noto-fonts-cjk +nvm +nwg-look +obs-studio +obsidian +opencl-mesa +opencv +openssh +p2pool +packer +pacman-contrib +pavucontrol +picom +pipewire +pipewire-alsa +pipewire-jack +pipewire-pulse +polybar +postgresql +python-pip +python-pipx +qalculate-qt +qemu-chardev-spice +qemu-hw-usb-redirect +qemu-ui-gtk +qmk +qt5-base +remmina +retroarch +ripgrep +rofi +rpmextract +sassc +scrcpy +screen +scrot +shotgun +signal-desktop +smartmontools +sof-firmware +starship +steam +streamlink +sxiv +termusic +thunar +thunderbird +tigervnc +tlp +tlpui +tmux +torbrowser-launcher +traceroute +tree +tree-sitter-cli +ttc-iosevka +ttf-firacode-nerd +ttf-jetbrains-mono-nerd +tumbler +udisks2 +upx +vim +virtualbox +virtualbox-host-modules-arch +vlc +vtk +vulkan-intel +vulkan-radeon +vulkan-tools +waydroid +wget +wine-gecko +wine-mono +wine-staging +winetricks +wireless_tools +wireplumber +wl-clipboard +wlsunset +wmctrl +wpa_supplicant +xclip +xdg-desktop-portal-hyprland +xdg-utils +xf86-video-amdgpu +xf86-video-ati +xf86-video-nouveau +xh +xmrig +xorg-server-devel +xorg-xinit +xorg-xrandr +xorg-xwd +xorg-xwininfo +xterm +zoxide +zram-generator +zsh +zsh-autosuggestions +zsh-syntax-highlighting