Create unified install script
This commit is contained in:
parent
61da6ec21b
commit
40faa56c3e
|
@ -1,16 +1,13 @@
|
||||||
# My dotfiles
|
# My dotfiles
|
||||||
|
|
||||||
This is a collection of some of my dotfiles for my Linux systems. I personally use these on Artix, Fedora, Ubuntu and Termux (Android).
|
This is a collection of some of my dotfiles for my Linux systems. These work on Artix, Debian, Fedora, Ubuntu and Termux (Android).
|
||||||
|
|
||||||
To install:
|
To install:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ git clone https://github.com/theanonymousexyz/dotfiles.git
|
$ git clone https://github.com/theanonymousexyz/dotfiles.git
|
||||||
$ cd dotfiles
|
$ cd dotfiles
|
||||||
$ ./artix-install.sh # For Artix
|
$ ./install.sh
|
||||||
$ ./deb-install.sh # For Debian and Ubuntu
|
|
||||||
$ ./fedora-install.sh # For Fedora
|
|
||||||
$ ./termux-install.sh # For Termux
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Note that I use `doas` instead of `sudo` (only on Artix). If you prefer `sudo`, then change all instances of `doas` to `sudo`, or simply create a symlink `doas` pointing to `sudo`:
|
Note that I use `doas` instead of `sudo` (only on Artix). If you prefer `sudo`, then change all instances of `doas` to `sudo`, or simply create a symlink `doas` pointing to `sudo`:
|
||||||
|
|
|
@ -1,35 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$(lsb_release -si)" != "Artix" ]; then
|
|
||||||
echo "This script is only intended to be used for a full setup on Artix. Quitting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Configuring directories..."
|
|
||||||
|
|
||||||
cd -- "$(dirname -- $0)"
|
|
||||||
set -- "alacritty" "mako" "nvim" "scripts" "sway" "swaylock" "swaynag" "waybar" "zsh"
|
|
||||||
mkdir -p "$HOME/.config/zsh" # Symlink only the individual files instead of the entire directory
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Creating the symlinks with stow..."
|
|
||||||
|
|
||||||
for pkg in "$@"; do
|
|
||||||
echo "* Stowing $pkg"
|
|
||||||
stow -t "$HOME" --ignore="README.md" "$pkg"
|
|
||||||
sleep 0.1
|
|
||||||
done
|
|
||||||
|
|
||||||
sleep 0.4
|
|
||||||
echo "Making scripts executable..."
|
|
||||||
|
|
||||||
chmod +x scripts/.local/bin/clear-clipboard.sh
|
|
||||||
chmod +x scripts/.local/bin/erase-disk.sh
|
|
||||||
chmod +x scripts/.local/bin/update.sh
|
|
||||||
chmod +x sway/.config/sway/autostart.sh
|
|
||||||
chmod +x waybar/.config/waybar/ivpn-reconnect.sh
|
|
||||||
chmod +x waybar/.config/waybar/ivpn-status.sh
|
|
||||||
chmod +x waybar/.config/waybar/mediaplayer.py
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Done!"
|
|
|
@ -1,26 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$(lsb_release -si)" != "Debian" ] && [ "$(lsb_release -si)" != "Ubuntu" ]; then
|
|
||||||
echo "This script is only intended to be used for a full setup on Debian or Ubuntu. Quitting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Configuring directories..."
|
|
||||||
|
|
||||||
cd -- "$(dirname -- $0)"
|
|
||||||
set -- "scripts" "zsh"
|
|
||||||
mkdir -p "$HOME/.config/zsh" # Symlink only the individual files instead of the entire directory
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Creating the symlinks with stow..."
|
|
||||||
|
|
||||||
for pkg in "$@"; do
|
|
||||||
echo "* Stowing $pkg"
|
|
||||||
stow -t "$HOME" --ignore="README.md" "$pkg"
|
|
||||||
sleep 0.1
|
|
||||||
done
|
|
||||||
|
|
||||||
sleep 0.4
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Done!"
|
|
|
@ -1,31 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$(lsb_release -si)" != "Fedora" ]; then
|
|
||||||
echo "This script is only intended to be used for a full setup on Fedora. Quitting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Configuring directories..."
|
|
||||||
|
|
||||||
cd -- "$(dirname -- $0)"
|
|
||||||
set -- "nvim" "scripts" "zsh"
|
|
||||||
mkdir -p "$HOME/.config/zsh" # Symlink only the individual files instead of the entire directory
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Creating the symlinks with stow..."
|
|
||||||
|
|
||||||
for pkg in "$@"; do
|
|
||||||
echo "* Stowing $pkg"
|
|
||||||
stow -t "$HOME" --ignore="README.md" "$pkg"
|
|
||||||
sleep 0.1
|
|
||||||
done
|
|
||||||
|
|
||||||
sleep 0.4
|
|
||||||
echo "Making scripts executable..."
|
|
||||||
|
|
||||||
chmod +x scripts/.local/bin/clear-clipboard.sh
|
|
||||||
chmod +x scripts/.local/bin/erase-disk.sh
|
|
||||||
chmod +x scripts/.local/bin/update.sh
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Done!"
|
|
30
install.sh
Executable file
30
install.sh
Executable file
|
@ -0,0 +1,30 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo "=> Determining OS..."
|
||||||
|
|
||||||
|
if [ "$(uname -o)" = "Android" ] || [ "$(lsb_release -si)" = "Fedora" ]; then
|
||||||
|
set -- "nvim" "scripts" "zsh"
|
||||||
|
elif [ "$(lsb_release -si)" = "Debian" ] || [ "$(lsb_release -si)" = "Ubuntu" ]; then
|
||||||
|
set -- "scripts" "zsh"
|
||||||
|
elif [ "$(lsb_release -si)" = "Artix" ]; then
|
||||||
|
set -- "alacritty" "mako" "nvim" "scripts" "sway" "swaylock" "swaynag" "waybar" "zsh"
|
||||||
|
else
|
||||||
|
echo "OS not supported!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 0.5
|
||||||
|
echo "=> Installing dotfile packages..."
|
||||||
|
|
||||||
|
cd -- "$(dirname -- $0)"
|
||||||
|
|
||||||
|
for pkg in "$@"; do
|
||||||
|
sleep 0.1
|
||||||
|
echo " -> Stowing $pkg"
|
||||||
|
|
||||||
|
[ "$pkg" = "zsh" ] && mkdir -p "$HOME/.config/$pkg" # Symlink only the individual files instead of the entire directory
|
||||||
|
stow -t "$HOME" --ignore="README.md" "$pkg"
|
||||||
|
done
|
||||||
|
|
||||||
|
sleep 0.5
|
||||||
|
echo "=> Done!"
|
|
@ -1,29 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$(uname -o)" != "Android" ]; then
|
|
||||||
echo "This script is only intended to be used for a full setup in Termux for Android. Quitting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Configuring directories..."
|
|
||||||
|
|
||||||
cd -- "$(dirname -- $0)"
|
|
||||||
set -- "nvim" "scripts" "zsh"
|
|
||||||
mkdir -p "$HOME/.config/zsh" # Symlink only the individual files instead of the entire directory
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Creating the symlinks with stow..."
|
|
||||||
|
|
||||||
for pkg in "$@"; do
|
|
||||||
echo "* Stowing $pkg"
|
|
||||||
stow -t "$HOME" --ignore="README.md" "$pkg"
|
|
||||||
sleep 0.1
|
|
||||||
done
|
|
||||||
|
|
||||||
sleep 0.4
|
|
||||||
echo "Making scripts executable..."
|
|
||||||
|
|
||||||
chmod +x scripts/.local/bin/update.sh
|
|
||||||
|
|
||||||
sleep 0.5
|
|
||||||
echo "Done!"
|
|
Loading…
Reference in a new issue