Reorganize Fedora dotfiles and remove legacy profile
This commit is contained in:
39
install.sh
Executable file
39
install.sh
Executable file
@@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
|
||||
REPO_ROOT=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)
|
||||
FEDORA_ROOT="$REPO_ROOT/fedora"
|
||||
CONFIG_ROOT="$HOME/.config"
|
||||
LOCAL_BIN="$HOME/.local/bin"
|
||||
|
||||
link_config() {
|
||||
local source=$1
|
||||
local destination=$2
|
||||
|
||||
mkdir -p "$(dirname -- "$destination")"
|
||||
if [[ -e "$destination" && ! -L "$destination" ]]; then
|
||||
printf 'Refusing to replace existing path: %s\n' "$destination" >&2
|
||||
exit 1
|
||||
fi
|
||||
ln -sfn -- "$source" "$destination"
|
||||
}
|
||||
|
||||
for name in niri fuzzel alacritty btop glow gtk-3.0 gtk-4.0 xsettingsd environment.d autostart; do
|
||||
link_config "$FEDORA_ROOT/$name" "$CONFIG_ROOT/$name"
|
||||
done
|
||||
|
||||
link_config "$REPO_ROOT/nvim" "$CONFIG_ROOT/nvim"
|
||||
link_config "$FEDORA_ROOT/quickshell/control-center" "$CONFIG_ROOT/quickshell/control-center"
|
||||
link_config "$FEDORA_ROOT/systemd/user/quickshell-control-center.service" \
|
||||
"$CONFIG_ROOT/systemd/user/quickshell-control-center.service"
|
||||
link_config "$FEDORA_ROOT/wallpapers/wallpaper.png" "$CONFIG_ROOT/wallpaper.png"
|
||||
|
||||
mkdir -p "$LOCAL_BIN"
|
||||
|
||||
for project in khal-calendar mail-counter; do
|
||||
cargo build --release --manifest-path "$FEDORA_ROOT/$project/Cargo.toml"
|
||||
install -m 755 "$FEDORA_ROOT/$project/target/release/$project" "$LOCAL_BIN/$project"
|
||||
done
|
||||
|
||||
systemctl --user daemon-reload
|
||||
printf 'Installed Fedora and Neovim links; Rust binaries are in %s.\n' "$LOCAL_BIN"
|
||||
Reference in New Issue
Block a user