~duncan-bayne/setups

c71a1877dcfd8f6083b470664c7878c9415c1d48 — Duncan Bayne a month ago 6a75085
Update FreeBSD setup scripts for FreeBSD 14.0
M freebsd/README.md => freebsd/README.md +13 -14
@@ 5,7 5,7 @@ freebsd-setup is a collection of scripts designed to be run on a vanilla [FreeBS
The end result is a Lispy development environment with StumpWM, Emacs, Slime etc. that also works well for Ruby on Rails development and a few other relatively arcane platforms (e.g. Inform).

## installation
1. Perform an installation of FreeBSD 13.2:
1. Perform an installation of FreeBSD 14.0:
  1. Install `doc`, `lib32`, `ports`, and `src`.
  2. Create an Auto (ZFS) filesystem, and enable disk encryption.
  3. Choose to start `sshd`, `moused`, `ntpd`, `ntpdate`, `powerd` and `dumpdev` on start.


@@ 13,15 13,14 @@ The end result is a Lispy development environment with StumpWM, Emacs, Slime etc
  5. Finally, install the FreeBSD Handbook.
2. Once booted, as root:
  1. [Configure the network](#configure-the-network) by editing rc.conf.
  2. Install portmaster with `portsnap fetch extract && cd /usr/ports/ports-mgmt/portmaster && make clean install`, installing programmatic completion for all shells.
  3. Install required tools with `pkg install -y bash git hs-shellcheck`.
  4. Clone this repo with `cd /root && git clone https://git.sr.ht/~duncan-bayne/freebsd-setup`.
  5. If you're not running on an Intel laptop, delete `root-scripts/340-install-intel-drivers.sh`.
  6. Run the root setup with `cd freebsd-setup && ./setup-root.sh`. When prompted, enable threading for SBCL.
  7. Accept defaults if prompted.
  8. Run `visudo` and uncomment the line to allow all wheel members to use sudo.
  9. Create an initial user, adding that user to the `wheel` group.
  10. Reboot.
  2. Install required tools with `pkg install -y bash git hs-shellcheck portmaster`.
  3. Clone this repo with `cd /root && git clone https://git.sr.ht/~duncan-bayne/setups && cd setups/frebsd`.
  4. If you're not running on an Intel laptop, delete `root-scripts/340-install-intel-drivers.sh`.
  5. Run the root setup with `./setup-root.sh`. When prompted, enable threading for SBCL.
  6. Accept defaults if prompted.
  7. Run `visudo` and uncomment the line to allow all wheel members to use sudo.
  8. Create an initial user, adding that user to the `wheel` group.
  9. Reboot.
4. As user:
  1. Clone this repo with `git clone https://git.sr.ht/~duncan-bayne/freebsd-setup`.
  2. Run the user setup with `cd freebsd-setup && ./setup-user.sh`.


@@ 55,10 54,10 @@ I'm refreshing these scripts and switching back to FreeBSD as my daily driver fo

```
device {
	bdaddr	00:18:01:3c:94:34;
	name    "FILCO Bluetooth Keyboard";
	key	    nokey;
	pin     nopin;
  bdaddr	00:18:01:3c:94:34;
  name    "FILCO Bluetooth Keyboard";
  key	    nokey;
  pin     nopin;
}
```


M freebsd/root-scripts/070-install-virtualbox.sh => freebsd/root-scripts/070-install-virtualbox.sh +2 -2
@@ 3,8 3,8 @@
set -euxo pipefail
shellcheck "$0"

cd /usr/ports/emulators/virtualbox-ose/
make install
sudo pkg install -y \
     virtualbox-ose

sysrc -f /etc/rc.conf vboxnet_enable=YES
sysrc -f /boot/loader.conf vboxdrv=YES

M freebsd/root-scripts/110-install-misc-apps.sh => freebsd/root-scripts/110-install-misc-apps.sh +1 -1
@@ 13,7 13,7 @@ pkg install -y \
    geeqie \
    gimp \
    inotify-tools \
    kdelive \
    kdenlive \
    lagrange \
    libreoffice \
    netsurf \

M freebsd/root-scripts/140-install-mu4e.sh => freebsd/root-scripts/140-install-mu4e.sh +1 -0
@@ 5,6 5,7 @@ shellcheck "$0"

pkg install -y \
  isync \
  mu \
  w3m

cd /usr/ports/mail/mu

M freebsd/root-scripts/330-install-spotify.sh => freebsd/root-scripts/330-install-spotify.sh +1 -1
@@ 4,5 4,5 @@ set -euxo pipefail
shellcheck "$0"

pkg install -y \
    spotify-tui \
    spotify-qt \
    spotifyd

M freebsd/root-scripts/390-install-postgres.sh => freebsd/root-scripts/390-install-postgres.sh +0 -1
@@ 9,4 9,3 @@ pkg install -y \
sysrc postgresql_enable=yes

/usr/local/etc/rc.d/postgresql initdb
/usr/local/etc/rc.d/postgresql start &

M freebsd/user-scripts/010-install-rbenv.sh => freebsd/user-scripts/010-install-rbenv.sh +1 -1
@@ 3,7 3,7 @@
set -euxo pipefail
shellcheck "$0"

RUBY_VERSION=3.2.0
RUBY_VERSION=3.3.0

git clone https://github.com/rbenv/rbenv.git ~/.rbenv


M freebsd/user-scripts/040-configure-stumpwm.sh => freebsd/user-scripts/040-configure-stumpwm.sh +1 -1
@@ 4,7 4,7 @@ set -euxo pipefail
shellcheck "$0"

rm -f ~/.stumpwmrc
ln -s ~/freebsd-setup/conf/stumpwm/stumpwmrc ~/.stumpwmrc
ln -s "$(pwd)/conf/stumpwm/stumpwmrc" ~/.stumpwmrc

echo exec stumpwm > ~/.xinitrc
chmod 0755 ~/.xinitrc

M freebsd/user-scripts/050-install-bin.sh => freebsd/user-scripts/050-install-bin.sh +2 -5
@@ 4,10 4,7 @@ set -euxo pipefail
shellcheck "$0"

rm -f ~/bin
ln -s ~/freebsd-setup/conf/bin ~/bin
ln -s "$(pwd)/conf/bin" ~/bin

rm -f ~/.chromecastize
ln -s ~/freebsd-setup/conf/chromecastize ~/.chromecastize

curl https://raw.githubusercontent.com/mhagger/git-test/master/bin/git-test > ~/bin/git-test
chmod a+x ~/bin/git-test
ln -s "$(pwd)/conf/chromecastize ~/.chromecastize

M freebsd/user-scripts/070-configure-emacs.sh => freebsd/user-scripts/070-configure-emacs.sh +2 -3
@@ 3,6 3,5 @@
set -euxo pipefail
shellcheck "$0"

git clone https://git.sr.ht/~duncan-bayne/emacs-setup ~/emacs-setup
ln -s ~/emacs-setup/emacs ~/.emacs
ln -s ~/emacs-setup/emacs.d ~/.emacs.d
ln -s "$(pwd)/../emacs/emacs" ~/.emacs
ln -s "$(pwd)/../emacs/emacs.d" ~/.emacs.d

M freebsd/user-scripts/090-install-google-fonts.sh => freebsd/user-scripts/090-install-google-fonts.sh +1 -1
@@ 12,6 12,6 @@ rm -rf ~/.fonts
mv fonts-main ~/.fonts

mkdir -p ~/.config
ln -s ~/freebsd-setup/conf/fontconfig ~/.config/fontconfig
ln -s "$(pwd)/conf/fontconfig" ~/.config/fontconfig

fc-cache -f

M freebsd/user-scripts/100-install-plantuml.sh => freebsd/user-scripts/100-install-plantuml.sh +0 -1
@@ 3,5 3,4 @@
set -euxo pipefail
shellcheck "$0"

mkdir -p ~/bin
wget https://sourceforge.net/projects/plantuml/files/plantuml.1.2018.0.jar/download -O ~/bin/plantuml.jar

M freebsd/user-scripts/130-configure-bash.sh => freebsd/user-scripts/130-configure-bash.sh +2 -2
@@ 4,9 4,9 @@ set -euxo pipefail
shellcheck "$0"

rm -f ~/.bashrc
ln ~/freebsd-setup/conf/bash/bashrc ~/.bashrc
ln "$(pwd)/conf/bash/bashrc" ~/.bashrc

rm -f ~/.bash_profile
ln ~/freebsd-setup/conf/bash/bash_profile ~/.bash_profile
ln "$(pwd)/conf/bash/bash_profile" ~/.bash_profile

chsh -s /usr/local/bin/bash

M freebsd/user-scripts/220-configure-gnupg.sh => freebsd/user-scripts/220-configure-gnupg.sh +1 -2
@@ 4,5 4,4 @@ set -euxo pipefail
shellcheck "$0"

mkdir -p ~/.gnupg
ln -s ~/freebsd-setup/conf/gpg/gpg-agent.conf ~/.gnupg/gpg-agent.conf

ln -s "$(pwd)/conf/gpg/gpg-agent.conf" ~/.gnupg/gpg-agent.conf