52 lines
1.6 KiB
Bash
52 lines
1.6 KiB
Bash
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
# @TODO: Implement more soft-coding and interactivity to this script
|
|
|
|
sudo zpool create \
|
|
-o ashift=12 \
|
|
-o autotrim=on \
|
|
-o compatibility=openzfs-2.1-linux \
|
|
-O encryption=on \
|
|
-O keylocation=file:///etc/zfs/keys/zroot.key \
|
|
-O keyformat=passphrase \
|
|
-O acltype=posixacl \
|
|
-O xattr=sa \
|
|
-O dnodesize=auto \
|
|
-O compression=zstd-3 \
|
|
-O normalization=formD \
|
|
-O relatime=on \
|
|
-O canmount=off \
|
|
-O mountpoint=none \
|
|
"$2" \
|
|
/dev/disk/by-id/"${1}"-part1
|
|
|
|
DATASET=("${HOME}/Documents/.calibre" "${2}/LITERATURE")
|
|
mkdir -p "${DATASET[0]}"
|
|
sudo zfs create -o mountpoint="${DATASET[0]}" "${DATASET[1]}"
|
|
|
|
DATASET=("${HOME}/Videos" "${2}/FILM")
|
|
mkdir -p "${DATASET[0]}"
|
|
sudo zfs create -o mountpoint="${DATASET[0]}" "${DATASET[1]}"
|
|
|
|
DATASET=("${HOME}/.var/app/com.valvesoftware.Steam" "${2}/STEAMGAMES")
|
|
mkdir -p "${DATASET[0]}"
|
|
sudo zfs create -o mountpoint="${DATASET[0]}" "${DATASET[1]}"
|
|
|
|
DATASET=("${HOME}/.var/app/org.libretro.RetroArch" "${2}/RARCHGAMES")
|
|
mkdir -p "${DATASET[0]}"
|
|
sudo zfs create -o mountpoint="${DATASET[0]}" "${DATASET[1]}"
|
|
|
|
DATASET=("${HOME}/Games" "${2}/GAMES")
|
|
mkdir -p "${DATASET[0]}"
|
|
sudo zfs create -o mountpoint="${DATASET[0]}" "${DATASET[1]}"
|
|
ln -s "${HOME}/.var/app/com.valvesoftware.Steam" "${DATASET[0]}/Steam"
|
|
ln -s "${HOME}/.var/app/org.libretro.RetroArch" "${DATASET[0]}/libRetro"
|
|
|
|
DATASET=("${HOME}/.var/app/org.libretro.RetroArch" "${2}/RARCHGAMES")
|
|
mkdir -p "${DATASET[0]}"
|
|
sudo zfs create -o mountpoint="${DATASET[0]}" "${DATASET[1]}"
|
|
|
|
DATASET=("${HOME}/.XXX" "${2}/XXX")
|
|
mkdir -p "${DATASET[0]}"
|
|
sudo zfs create -o keylocation=prompt -o keyformat=passphrase -o mountpoint="${DATASET[0]}" "${DATASET[1]}" |