Updated install options.
Bootstrap - sets up the Desktop Install - sets up my software scripts/ - specific software setups
This commit is contained in:
@@ -1,71 +1,91 @@
|
||||
# Minimal Dotfiles
|
||||
|
||||
A deliberately minimal dotfile configuration.
|
||||
A deliberately minimal dotfile configuration.
|
||||
|
||||
## Philosophy
|
||||
|
||||
Over the years I have grown tired of tweaking config files, for every component of my desktop.
|
||||
This repository contains only the essentials:
|
||||
Over the years I have grown tired of tweaking config files for every component of my desktop.
|
||||
This repository contains only the essentials.
|
||||
|
||||
Start with a minimal Debian 13 (Trixie) install — SSH server and system essentials only, no desktop environment. Run `bootstrap.sh` followed by `install.sh` to get up and running. For additional tooling, see the `scripts/` folder.
|
||||
|
||||
- **Desktop Environment**: Gnome 48 with the Pop_Shell extension provides built-in tiling and sensible defaults—no ricing required
|
||||
- **Configuration**: Only what's necessary for my daily workflow and a few small css changes to square gnomes ui
|
||||
- **Maintenance**: Simple symlink management and package installation via a single script
|
||||
|
||||
## What's Inside
|
||||
|
||||
```
|
||||
.
|
||||
├── config/
|
||||
│ ├── fish/ # Fish shell configuration
|
||||
│ ├── foot/ # Foot terminal configuration
|
||||
│ ├── gitu/ # Git TUI settings
|
||||
│ ├── kanata/ # Keyboard remapping
|
||||
│ ├── gtk3/ # gtk3 css for squared ui
|
||||
│ ├── gtk4/ # gtk4 css for squared ui
|
||||
│ └── nvim/ # Neovim setup
|
||||
└── install.sh # Automated setup script
|
||||
```
|
||||
.
|
||||
├── config/
|
||||
│ ├── alacritty/ # Alacritty terminal configuration
|
||||
│ ├── fish/ # Fish shell configuration
|
||||
│ ├── gitu/ # Git TUI settings
|
||||
│ ├── kanata/ # Keyboard remapping
|
||||
│ ├── lf/ # Terminal file manager
|
||||
│ ├── nvim/ # Neovim setup
|
||||
│ └── tmux/ # Tmux configuration
|
||||
├── scripts/
|
||||
│ ├── setup_docker # Docker install recipe
|
||||
│ └── setup_golang # Golang + go tools install recipe
|
||||
├── bootstrap.sh # Fresh system setup (run once, before install.sh)
|
||||
└── install.sh # Dotfile symlinks and package installation
|
||||
|
||||
## Installation
|
||||
|
||||
## Desktop Bootstrap
|
||||
|
||||
Start with a minimal Debian 13 (Trixie) install — SSH server and system essentials only, no desktop environment.
|
||||
|
||||
Then run the bootstrap script to set up DMS, Helium, and GTK theming:
|
||||
|
||||
./bootstrap.sh
|
||||
|
||||
Once complete, restore personal files from backup (SSH keys, documents, projects, fonts, wallpapers, local binaries/scripts), then continue with the steps below.
|
||||
|
||||
|
||||
## Software Installation
|
||||
|
||||
Clone this repository and run the install script:
|
||||
|
||||
### Install Options
|
||||
|
||||
```bash
|
||||
# Interactive mode (with confirmations)
|
||||
./install.sh
|
||||
# Interactive mode (with confirmations)
|
||||
./install.sh
|
||||
|
||||
# Only create symlinks
|
||||
./install.sh -l
|
||||
# Only create symlinks
|
||||
./install.sh -l
|
||||
|
||||
# Only install packages
|
||||
./install.sh -i
|
||||
```
|
||||
# Only install packages
|
||||
./install.sh -i
|
||||
|
||||
## What Gets Installed
|
||||
|
||||
The script installs essential development tools via `apt`:
|
||||
|
||||
- **CLI Tools**: `wget`, `curl`, `fzf`, `fd-find`, `ripgrep`, `tree`, `btop`, `direnv`
|
||||
- **CLI Tools**: `wget`, `curl`, `fzf`, `fd-find`, `ripgrep`, `tree`, `btop`, `direnv`, `bat`, `jq`, `lf`, `unzip`
|
||||
- **Development**: `build-essential`, `make`, `bear`, `valgrind`
|
||||
- **Shell**: `fish`
|
||||
- **Terminal**: `alacritty`
|
||||
- **Multiplexer**: `tmux`
|
||||
- **Other**: `ca-certificates`, `gnupg`, `libfuse2`
|
||||
|
||||
|
||||
## Symlinks Created
|
||||
|
||||
- `~/.tmux.conf` → `./config/tmux/.tmux.conf`
|
||||
- `~/.config/alacritty` → `./config/alacritty`
|
||||
- `~/.config/fish` → `./config/fish`
|
||||
- `~/.config/foot` → `./config/foot`
|
||||
- `~/.config/kanata` → `./config/kanata`
|
||||
- `~/.config/nvim` → `./config/nvim`
|
||||
- `~/.config/gitu` → `./config/gitu`
|
||||
- `~/.config/gtk-3.0/gtk.css` → `./config/gtk3/gtk.css`
|
||||
- `~/.config/gtk-4.0/gtk.css` → `./config/gtk4/gtk.css`
|
||||
- `~/.config/lf` → `./config/lf`
|
||||
|
||||
This setup prioritizes **stability** and **simplicity** over customization, the Gnome Desktop with minimal extensions handles the heavy lifting for tiling and aesthetics.
|
||||
|
||||
## Extensions installed
|
||||
- Pop Shell
|
||||
- User Themes
|
||||
- Arc Menu
|
||||
- Disable workspace switcher
|
||||
## Scripts
|
||||
|
||||
Self-contained recipes for tooling that goes beyond the core install. Each script can be run independently as needed:
|
||||
|
||||
./scripts/setup_docker
|
||||
./scripts/setup_golang
|
||||
./scripts/setup_kanata
|
||||
|
||||
These are not run automatically by `install.sh` — they are opt-in.
|
||||
|
||||
|
||||
This setup prioritizes **stability** and **simplicity** over customization. DankMaterialShell with niri handles the heavy lifting for tiling and aesthetics.
|
||||
|
||||
Reference in New Issue
Block a user