No description
  • Nushell 46.4%
  • Rust 42.6%
  • Shell 6.8%
  • PowerShell 1.8%
  • Makefile 1.6%
  • Other 0.8%
Find a file
Austyn Deseo 3c46176071
Some checks failed
Ubuntu Test / build (push) Has been cancelled
fix ssh for 1pass and double login issue
2026-08-01 11:04:39 -05:00
.githooks updates 2026-05-06 16:49:09 -05:00
.github updates to nushell documentation 2026-05-07 12:59:59 -05:00
ansible updates 2024-07-29 11:39:36 -05:00
app-configs fix ssh for 1pass and double login issue 2026-08-01 11:04:39 -05:00
dotstrap further changes 2026-05-26 11:09:29 -05:00
extras initial changes 2022-09-02 00:14:09 -05:00
installer-data further changes 2026-05-26 11:09:29 -05:00
installers updates 2026-05-26 11:09:09 -05:00
os/pop updates 2026-05-06 16:49:09 -05:00
profile-configs updates for dotfiles 2026-05-05 18:25:17 -05:00
scripts add wallpapers 2026-07-09 01:28:50 -05:00
shells correct for deprecations 2026-07-26 23:25:13 -05:00
.gitignore updates 2026-05-06 16:49:09 -05:00
AGENTS.md updates 2026-05-06 16:49:09 -05:00
LICENSE Initial commit 2021-11-13 06:50:50 -06:00
Makefile updates 2026-05-06 16:49:09 -05:00
profile-picture.jpg mv profilepic 2022-10-16 21:25:49 -05:00
README.md updates 2026-05-06 16:49:09 -05:00
setup-apps.nu Merge branch 'main' of ssh://ssh.git.admiralfeb.dev:2222/admiralfeb/.dotfiles 2026-05-26 11:09:40 -05:00
setup-initial.sh further changes 2026-05-26 11:09:29 -05:00
setup-linux-x86_64 further code 2026-05-06 18:58:30 -05:00
strap.ps1 add fedora setup 2026-05-05 20:50:18 -05:00
TODO.md updates 2026-05-06 16:49:09 -05:00

dotfiles

Cross-machine dotfiles repository. Keeps shell/editor/tool configuration consistent across workstations and speeds up post-install setup via a single compiled binary.

Quick Start

# Build the binary (requires Rust toolchain)
make build

# Run everything: link configs + install apps
./target/release/dotstrap

# Or run individual steps
./target/release/dotstrap bash        # Link bash configs
./target/release/dotstrap nu-config   # Link Nushell configs
./target/release/dotstrap apps        # Install all apps

Available Commands

Run dotstrap --help or dotstrap <command> --help for full documentation.

Command Description
all Run all bootstrap steps (default when no command given)
bash Link bash config files (.bashrc, .bash_aliases, etc.)
nu-install Install Nushell + starship + yazi via COPR/Gemfury
apps / setup Install all apps and services
config Link all config files (git, ghostty, yazi, nushell)
app-configs Link git, ghostty, and yazi app configs
git-config Link git config files
ghostty-config Link Ghostty terminal config
yazi-config Link Yazi file manager config
nu-config Link Nushell config to ~/.config/nushell/
git-hook Install pre-commit hook for secret scanning
synology Link Synology NAS shell configs
powershell Configure PowerShell profile
languages Install Rust (rustup) and Node.js LTS (fnm)
code Install Visual Studio Code
ghostty Install Ghostty terminal emulator
brave Install Brave browser
chrome Install Google Chrome
docker Install Docker CE
mongodb Install MongoDB
postgres Install PostgreSQL
vlc Install VLC media player
bcompare Install Beyond Compare
merkuro Install Merkuro calendar + Akonadi
steam Install Steam
tailscale Install Tailscale VPN
synology-drive Install Synology Drive client
onepassword Install 1Password
flatpaks Install Flatpak apps from Flathub

Platform Support

Platform Status
Fedora (dnf) Primary target
Ubuntu/Pop (apt) Supported
macOS Partial support
Windows Partial support

Building

make build    # cargo build --release
make check    # cargo check (fast syntax/type check)
make clean    # remove build artifacts

The binary is output to target/release/dotstrap (repo root, not inside dotstrap/).

Shell Configs

Shell configuration files are still used at runtime for the interactive shell experience:

  • shells/nushell/ — Nushell config, env, aliases, functions
  • shells/bash/ — Bash config and aliases
  • shells/powershell/ — PowerShell profile

The dotstrap binary links these into the appropriate locations (~/.config/nushell/, ~/.bashrc, etc.) but does not replace them.