-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
0abfffa
commit 7a06867
Showing
4 changed files
with
264 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
if [ x$feature_default_font_path = xy ] ; then | ||
font=unicode | ||
else | ||
font=$prefix/font.pf2 | ||
fi | ||
|
||
if loadfont $font ; then | ||
set gfxmode=800x600 | ||
set gfxpayload=keep | ||
insmod efi_gop | ||
insmod efi_uga | ||
insmod video_bochs | ||
insmod video_cirrus | ||
insmod gfxterm | ||
insmod png | ||
terminal_output gfxterm | ||
fi | ||
|
||
if background_image /isolinux/splash.png; then | ||
set color_normal=light-gray/black | ||
set color_highlight=white/black | ||
elif background_image /splash.png; then | ||
set color_normal=light-gray/black | ||
set color_highlight=white/black | ||
else | ||
set menu_color_normal=cyan/blue | ||
set menu_color_highlight=white/blue | ||
fi | ||
|
||
insmod play | ||
play 960 440 1 0 4 440 1 | ||
set theme=/boot/grub/theme/1 | ||
menuentry --hotkey=i 'Digitale Gesellschaft Install' { | ||
set background_color=black | ||
linux /install.amd/vmlinuz auto=true vga=788 --- quiet preseed/file=/cdrom/preseed.cfg | ||
initrd /install.amd/initrd.gz | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
d-i debian-installer/locale string en_US | ||
|
||
d-i keyboard-configuration/xkb-keymap select ch | ||
|
||
d-i netcfg/enable boolean true | ||
|
||
d-i netcfg/wireless_security_type select wpa | ||
d-i netcfg/wireless_show_essids select MY-SSID | ||
d-i netcfg/wireless_essid string MY-SSID | ||
d-i netcfg/wireless_essid_again string MY-SSID | ||
d-i netcfg/wireless_wpa string MY-PASSWORD | ||
# TODO still asks about the SSID | ||
|
||
d-i netcfg/get_hostname string | ||
d-i netcfg/get_domain string | ||
d-i netcfg/hostname string debian | ||
|
||
d-i mirror/country string manual | ||
d-i mirror/http/hostname string debian.ethz.ch | ||
d-i mirror/http/directory string /debian | ||
d-i mirror/http/proxy string | ||
|
||
d-i passwd/root-login boolean false | ||
d-i passwd/user-fullname string Digitale Gesellschaft | ||
d-i passwd/username string digiges | ||
d-i passwd/user-password password digiges | ||
d-i passwd/user-password-again password digiges | ||
|
||
d-i time/zone string Europe/Zurich | ||
|
||
d-i clock-setup/utc boolean true | ||
d-i clock-setup/ntp boolean true | ||
|
||
# NOTE remove next line to select the disk manually | ||
d-i partman-auto/disk string /dev/sda | ||
d-i partman-auto/method string regular | ||
d-i partman-auto/choose_recipe select home | ||
d-i partman-partitioning/confirm_write_new_label boolean true | ||
d-i partman/choose_partition select finish | ||
d-i partman/confirm boolean true | ||
d-i partman/confirm_nooverwrite boolean true | ||
|
||
d-i base-installer/install-recommends boolean true | ||
d-i base-installer/kernel/image select linux-image-amd64 | ||
|
||
d-i apt-setup/cdrom/set-first boolean false | ||
d-i apt-setup/non-free-firmware boolean true | ||
|
||
d-i tasksel/first multiselect ... Cinnamon, standard system utilities | ||
# TODO does not work, GNOME is installed, despite taking it from debconf-get-selections --installer | ||
|
||
d-i pkgsel/include string mc | ||
# TODO add more packages, but leave just one single package until testing is finished | ||
|
||
d-i popularity-contest/participate boolean true | ||
|
||
d-i grub-installer/only_debian boolean true | ||
d-i grub-installer/with_other_os boolean true | ||
|
||
d-i finish-install/keep-consoles boolean true | ||
d-i finish-install/reboot_in_progress note |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
|
||
# Setup UEFI USB Stick | ||
|
||
- Download Debian Image | ||
- https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.7.0-amd64-netinst.iso | ||
- https://www.debian.org/releases/bookworm/debian-installer/ | ||
- Mount CD-ROM ISO | ||
- Prepare USB Stick | ||
- `parted --script /dev/sdX mklabel msdos` | ||
- `parted --script /dev/sdX mkpart primary fat32 0% 100%` | ||
- `mkfs.vfat /dev/sdX1` | ||
- `mount /dev/sdX1 /mnt/usbstick` | ||
- Copy CD-ROM -> USB-Stick | ||
- `rsync -av /mnt/cdrom/ /mnt/usbstick` | ||
- Copy grub.cfg | ||
- `cp grub.cfg /mnt/usbstick/boot/grub/grub.cfg` | ||
- Adjust preseed.cfg | ||
- MY-SSID | ||
- MY-PASSWORD | ||
- Copy preseed.cfg | ||
- `cp preseed.cfg /mnt/usbstick/preseed.cfg` | ||
- Unmount USB Stick | ||
- `umount /mnt/usbstick` | ||
|
||
# Setup Laptop | ||
|
||
- Insert USB-Stick | ||
- Boot from USB-Stick | ||
- Select "Digitale Gesellschaft Install" | ||
- Wait (ca. 30 Minutes) | ||
- Login digiges/digiges | ||
- Configure User | ||
- `curl -sS https://thomasstauffer666.github.io/DigitaleGesellschaft/DebianAutomatedInstall/setup.sh | sh` | ||
|
||
# TODO | ||
|
||
- Grub Auto Install? | ||
- Auto Select ESSID | ||
- Install Cinnamon | ||
- Execute setup.sh? | ||
|
||
# Additional Documentation | ||
|
||
- https://wiki.debian.org/DebianInstaller/WritableUSB-Stick | ||
- https://www.debian.org/releases/bookworm/amd64/apb.en.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,121 @@ | ||
#!/bin/sh | ||
|
||
# All steps in this script have to be written in a way that the script can be | ||
# executed several times and the end result is always the same (idempotent). | ||
# E.g. overwriting a file is fine, while adding just a few lines to a file is | ||
# not a good idea. | ||
|
||
# Exit on the first error. | ||
set -e | ||
|
||
USER=$(whoami) | ||
|
||
if [ $(id -u) = 0 ]; then | ||
echo "Run as a regular user." | ||
exit | ||
fi | ||
|
||
cat << EOF > ~/Desktop/Digitale-Gesellschaft.desktop | ||
[Desktop Entry] | ||
Name=Digitale Gesellschaft | ||
Type=Link | ||
URL=https://www.digitale-gesellschaft.ch | ||
Icon=text-html | ||
EOF | ||
|
||
# TODO URL | ||
cat << EOF > ~/Desktop/Code-Of-Conduct.desktop | ||
[Desktop Entry] | ||
Name=Code of Conduct | ||
Type=Link | ||
URL=https://www.digitale-gesellschaft.ch | ||
Icon=text-html | ||
EOF | ||
|
||
cat << EOF > ~/Desktop/Projekte.desktop | ||
[Desktop Entry] | ||
Name=Projekte | ||
Type=Link | ||
URL=https://pad.medialepfade.net/PJ1jn_5HQ4OPHvBBR7-pqw | ||
Icon=text-html | ||
EOF | ||
|
||
cat << EOF > ~/Desktop/Links.desktop | ||
[Desktop Entry] | ||
Name=Tools | ||
Type=Link | ||
URL=https://pad.medialepfade.net/deNW2fTCT--BK0lWh8zikQ# | ||
Icon=text-html | ||
EOF | ||
|
||
cat << EOF > ~/Desktop/Syncthing.desktop | ||
[Desktop Entry] | ||
Name=Syncthing | ||
Exec=/usr/bin/syncthing -browser-only | ||
Icon=syncthing | ||
Terminal=false | ||
Type=Application | ||
EOF | ||
|
||
cat << EOF > ~/Desktop/Terminal.desktop | ||
[Desktop Entry] | ||
Name=Terminal | ||
Exec=gnome-terminal | ||
Icon=org.gnome.Terminal | ||
Terminal=false | ||
Type=Application | ||
EOF | ||
|
||
cat << EOF > ~/Desktop/Firefox.desktop | ||
[Desktop Entry] | ||
Name=Firefox | ||
Exec=firefox -new-window | ||
Icon=firefox | ||
Terminal=false | ||
Type=Application | ||
EOF | ||
|
||
# .desktop files only execute an application if they are marked as executable. | ||
chmod +x ~/Desktop/*.desktop | ||
|
||
cat << EOF > ~/.config/autostart/Syncthing.desktop | ||
[Desktop Entry] | ||
Name=Start Syncthing | ||
Exec=/usr/bin/syncthing serve --no-browser --logfile=default | ||
Icon=syncthing | ||
Terminal=false | ||
Type=Application | ||
X-GNOME-Autostart-enabled=true | ||
NoDisplay=false | ||
Hidden=false | ||
X-GNOME-Autostart-Delay=0 | ||
EOF | ||
|
||
# gsettings get org.gnome.Terminal.ProfilesList default | ||
# gsettings set org.gnome.desktop.interface monospace-font-name 'DejaVu Sans Mono 12' | ||
# gsettings set org.gnome.desktop.interface monospace-font-name 'Ubuntu Mono 20' | ||
# apt install fonts-ubuntu? | ||
|
||
# TODO gnome-terminal default font size? | ||
# TODO nemo default config? panes? date, ... | ||
# TODO nicer icon set? from mint? | ||
# http://ftp.ch.debian.org/debian/pool/main/m/mint-y-icons/mint-y-icons_1.7.7-1_all.deb | ||
# TODO configure syncthing? | ||
|
||
sudo apt-get update | ||
sudo apt-get upgrade | ||
sudo apt-get install --yes syncthing blender krita gimp mypaint geany geany-plugins mc vim emacs arduino audacity build-essential python3 nodejs npm mc meld task-cinnamon-desktop | ||
sudo apt-get autoclean | ||
|
||
# Allow current user to access /dev/ttyUSB* and /dev/ttyACM*. This is | ||
# necessary to access an Arduino from e.g. the Arduino IDE. Logout/login | ||
# is necessary, to see the effect. | ||
sudo usermod -a -G dialout $USER | ||
|
||
# Some Arduino boards identify themselves wrongly as modems and are then | ||
# taken hostage by modemmanager. Simplest idea is to just remove | ||
# modemmanger, assuming using a modem is unlikely to happen. | ||
sudo apt-get remove --yes modemmanager | ||
|
||
echo "Setup finished." | ||
echo "Logout and login manually." |