Compare commits

...

2 Commits

Author SHA1 Message Date
Jonas H
b09f6626ba install for arch 2026-03-07 21:26:40 +01:00
Jonas H
806f4c8f98 ignore pi 2026-03-07 21:26:29 +01:00
5 changed files with 117 additions and 59 deletions

3
.gitignore vendored
View File

@@ -2,3 +2,6 @@
.stow-local-ignore
pi/.pi/agent/profiles
pi/.pi/agent/sessions
pi/.pi/agent/auth.json
pi/.pi/agent/settings.json
pi/.pi/agent/usage-cache.json

View File

@@ -7,9 +7,26 @@ set -euo pipefail
DOTFILES_DIR="$(cd "$(dirname "$0")" && pwd)"
# ---------------------------------------------------------------------------
# Dependencies (Fedora)
# Detect Linux distribution
# ---------------------------------------------------------------------------
detect_distro() {
if [[ -f /etc/os-release ]]; then
. /etc/os-release
echo "$ID"
else
echo "unknown"
fi
}
DISTRO=$(detect_distro)
# ---------------------------------------------------------------------------
# Dependencies
# ---------------------------------------------------------------------------
case "$DISTRO" in
fedora)
DNF_PACKAGES=(
stow
# sway ecosystem
@@ -34,8 +51,45 @@ DNF_PACKAGES=(
firefox
)
echo "Installing dnf packages..."
echo "Installing packages for Fedora..."
sudo dnf install -y "${DNF_PACKAGES[@]}"
;;
arch)
PACMAN_PACKAGES=(
stow
# sway ecosystem
swayidle
# bar & notifications
mako
libnotify # notify-send
# terminal & launcher
fuzzel
# audio & display
wireplumber # wpctl
pipewire-pulse # pactl
brightnessctl
alsa-utils # speaker-test
# screen recording
wf-recorder
slurp
zenity
ffmpeg
# misc
jq
firefox
)
echo "Installing packages for Arch Linux..."
sudo pacman -S --noconfirm "${PACMAN_PACKAGES[@]}"
;;
*)
echo "ERROR: Unsupported distribution: $DISTRO"
echo "Supported distributions: fedora, arch"
exit 1
;;
esac
# ---------------------------------------------------------------------------
# Packages not in Fedora repos — install manually if missing
@@ -86,8 +140,42 @@ fi
echo ""
echo "Stowing dotfiles..."
# Check for conflicts before stowing
CONFLICTS=()
for PACKAGE in "$DOTFILES_DIR"/*/; do
PACKAGE="$(basename "$PACKAGE")"
# Skip hidden directories and .git
[[ "$PACKAGE" == .* ]] && continue
# Check if package has files that would conflict
while IFS= read -r -d '' dotfile; do
# Get the target path this would create
TARGET_PATH="${HOME}/${dotfile#$DOTFILES_DIR/$PACKAGE/}"
# If target exists and is NOT a symlink to the correct location, it's a conflict
if [[ -e "$TARGET_PATH" ]] && [[ ! -L "$TARGET_PATH" ]]; then
CONFLICTS+=("$PACKAGE (file: $TARGET_PATH)")
fi
done < <(find "$DOTFILES_DIR/$PACKAGE" -type f -print0 2>/dev/null || true)
done
if [[ ${#CONFLICTS[@]} -gt 0 ]]; then
echo "WARNING: Found conflicts with existing configs:"
for conflict in "${CONFLICTS[@]}"; do
echo "$conflict"
done
echo ""
fi
# Stow all packages
for PACKAGE in "$DOTFILES_DIR"/*/; do
PACKAGE="$(basename "$PACKAGE")"
# Skip hidden directories
[[ "$PACKAGE" == .* ]] && continue
echo " $PACKAGE"
stow --dir="$DOTFILES_DIR" --target="$HOME" --restow "$PACKAGE"
done

View File

@@ -1,8 +0,0 @@
{
"anthropic": {
"type": "oauth",
"refresh": "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",
"access": "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",
"expires": 1772856280733
}
}

View File

@@ -1,13 +0,0 @@
{
"lastChangelogVersion": "0.56.1",
"packages": [
"npm:pi-subagents",
"npm:@aliou/pi-guardrails",
"npm:pi-mcp-adapter",
"npm:pi-ask-tool-extension",
"npm:pi-web-access"
],
"defaultProvider": "anthropic",
"defaultModel": "claude-sonnet-4-6",
"hideThinkingBlock": true
}

View File

@@ -1,12 +0,0 @@
{
"timestamp": 1772832937691,
"data": {
"claude": {
"session": 82,
"weekly": 9,
"sessionResetsIn": "3h 24m",
"weeklyResetsIn": "6d 22h"
}
},
"rateLimitedUntil": {}
}