dotfiles
Health Gecti
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 10 GitHub stars
Code Gecti
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
- Permissions — No dangerous permissions requested
A comprehensive set of cross-platform shell configurations designed to provision a complete development environment on macOS and Linux. It installs and manages Homebrew packages, desktop apps, Docker services, and CLI replacements in a single command.
Security Assessment
The primary installation method relies on a `curl | bash` pattern, which executes remote shell scripts directly on your machine. While the automated code scan passed and found no dangerous patterns, the script inherently executes local shell commands and installs third-party binaries via package managers. It manages SSH and GPG keys, handling sensitive cryptographic data and configuration. No hardcoded secrets or dangerous permission requests were detected. Overall risk: Low.
Quality Assessment
The project appears to be highly maintained and reliable. It utilizes the permissive MIT license, making it freely available for use and modification. The repository is very active, with the most recent push occurring today. The project has a small but respectable community footprint, currently holding 10 GitHub stars.
Verdict
Safe to use, but users should always review the installation script before piping it directly into bash to fully understand the system modifications being made.
Cross-platform dotfiles for macOS and Linux. 33 configs, 141 Homebrew packages, Tokyo Night everywhere, modern CLI replacements, Docker services on demand
One-command development environment for macOS and Linux. 33 tool configs, consistent Tokyo Night theme, modern CLI replacements, and ready-to-go Docker services.
33 tool configs · 141 brew packages · 57 desktop apps · 72 Nerd Fonts · 19 Tokyo Night themed tools · 60 Git aliases · 6 Docker services · 18 Claude Code skills
Tokyo Night EverywhereOne color palette across 19 tools: terminals, editors, file managers, email, music, git diffs, monitoring dashboards, and fuzzy finders. |
Modern CLI Replacements
|
One-Command Install
|
Docker Services on DemandPostgreSQL, MongoDB, Redis, Valkey, and Redict as shell functions: |
GPG-Signed EverythingCommits and tags are signed by default. GPG keys are imported automatically, SSH keys get proper permissions, and tokens are GPG-encrypted. |
Fast Shell StartupNode.js, Python, and Ruby are managed by mise. Versions are defined in |
Quick Start
Prerequisites
| Tool | Install |
|---|---|
| macOS or Ubuntu/Debian | Fresh install works |
| Git | Pre-installed on macOS, apt install git on Linux |
| curl | Pre-installed on both |
Install
curl -fsSL https://raw.githubusercontent.com/gufranco/dotfiles/master/install.sh | bash
Verify
source ~/.zshrc
bat --version # syntax-highlighted cat
eza --version # modern ls
The installer detects your OS and architecture automatically. On macOS it installs Homebrew and runs the Brewfile. On Linux it uses apt, snap, and direct downloads.
What Gets Installed
Shell
| Feature | Implementation |
|---|---|
| Shell | Zsh with Oh My Zsh and Spaceship prompt |
| Fuzzy finder | fzf with bat preview and Tokyo Night colors |
| Tab completion | fzf-tab for fuzzy tab completion |
| Syntax highlighting | zsh-syntax-highlighting for fish-like coloring |
| Per-directory env | direnv with automatic .envrc loading |
| History | Deduplication, ignore common commands |
| GNU tools on macOS | coreutils, findutils, grep, sed, tar, make override BSD via PATH |
Modern Tool Replacements
Aliases activate only when the modern tool is installed:
| Alias | Replaces | Tool |
|---|---|---|
cat |
cat | bat with syntax highlighting, plain output when piped |
ls |
ls | eza with icons, git status, tree view via lt |
du |
du | dust with visual tree output |
df |
df | duf with color output |
ps |
ps | procs with tree and color |
top |
top | btm (Bottom) system monitor TUI |
ping |
ping | gping with graphical output (macOS) |
stats |
- | tokei for code statistics (macOS) |
Editor
Vim with 24 plugins managed by vim-plug:
| Category | Plugins |
|---|---|
| Language support | coc.nvim (LSP), vim-polyglot, vim-matchup, rainbow_csv |
| Navigation | fzf.vim, EasyMotion |
| Git | vim-signify (hunks), vim-fugitive (commands) |
| Editing | vim-surround, vim-visual-multi, vim-pasta, targets.vim, vim-unimpaired, vim-repeat |
| UI | lightline, vim-devicons, undotree, vim-cool, vim-search-pulse, winresizer |
CoC extensions: TypeScript, ESLint, Prettier, CSS, JSON, Shell, snippets, import-cost.
Terminal Multiplexer
Tmux with 7 plugins and vim-style keybindings:
| Plugin | What it does |
|---|---|
| Yoru Revamped | Status bar with system stats, git info, weather, network, and Tokyo Night theme |
| tmux-resurrect | Save and restore sessions across reboots |
| tmux-yank | Copy to system clipboard |
| extrakto | Extract URLs and file paths with fzf |
| tmux-session-wizard | Fuzzy session switcher |
| tmux-mighty-scroll | Better scrolling in fullscreen apps |
| tmux-menus | Popup context menus via F12 |
Git
60 aliases, performance-tuned config, and Tokyo Night colors for diffs, status, branches, and blame:
| Alias | Command | What it does |
|---|---|---|
st |
status -sb |
Short status |
lg |
log --graph --decorate |
Colored graph log |
fork |
checkout -q -b |
Create branch |
publish |
push -u origin HEAD |
Push new branch |
force |
push --force-with-lease |
Safe force push |
cleanup |
merged branch delete | Remove merged branches |
today |
log --since=midnight |
Today's commits |
sw |
switch |
Modern branch switching |
Delta as the diff pager with line numbers, hyperlinks, and Tokyo Night syntax theme. Histogram diff algorithm, zdiff3 merge conflicts, and automatic rebase on pull.
Infrastructure
Docker development via Colima with auto-configured VM sizing:
| Service | Command | Port |
|---|---|---|
| PostgreSQL | postgres-init |
5432 |
| MongoDB | mongo-init |
27017 |
| Redis | redis-init |
6379 |
| Valkey | valkey-init |
7000 |
| Redict | redict-init |
6379 |
| Ubuntu | ubuntu-init |
- |
Each service has -init, -start, -stop, -purge, and -terminal functions. Colima VM uses Apple's Virtualization.framework on macOS with Rosetta 2 for x86_64 container support on Apple Silicon.
Claude Code
18 custom skills for AI-assisted development:
| Skill | What it does |
|---|---|
/commit |
Semantic commits with optional --pipeline CI monitoring |
/pr |
PR creation with self-review and pipeline monitoring |
/review |
Code review following project conventions |
/readme |
Marketing-grade README generation |
/assessment |
Architecture completeness audit |
/test |
Test runner with coverage and linting |
/checks |
CI/CD status monitoring |
/terraform |
Terraform workflows with safety gates |
/docker |
Container management with Colima awareness |
Plus 17 rule files covering code style, resilience, caching, API design, testing, security, database patterns, distributed systems, observability, debugging, git workflow, verification, LLM documentation references, infrastructure, pre-flight checks, and borrow-restore patterns.
Tokyo Night Theme
All tools use the Tokyo Night "Night" variant:
| Tool | Method |
|---|---|
| Ghostty | Custom theme file |
| Kitty | Custom theme file |
| iTerm2 | .itermcolors theme file |
| Tilix | Exported color scheme |
| Bat | Theme in bat/themes/ |
| Vim | tokyonight-vim plugin |
| Tmux | Yoru Revamped plugin |
| Bottom | [styles] in bottom.toml |
| K9s | Skin file in k9s/skins/ |
| Lazygit | gui.theme in config |
| Lazydocker | Theme colors in config |
| Tealdeer | RGB values in config.toml |
| Yazi | Full theme in theme.toml |
| eza | Full theme in theme.yml |
| Mutt | Custom theme in mutt/themes/ |
| cmus | Color scheme in rc |
| fzf | FZF_DEFAULT_OPTS --color |
| nnn | NNN_FCOLORS palette |
| Git | [color] sections in .gitconfig |
System Update
Run f5 in any terminal to update everything at once:
- Pulls latest dotfiles and submodules
- Updates Vim plugins and CoC extensions
- Updates Oh My Zsh, Zsh plugins, and Tmux plugins
- Updates Node.js LTS via NVM
- On macOS: runs
brew update,brew upgrade,brew bundle, and Mac App Store updates - On Linux: runs
apt updateandapt dist-upgrade - Reloads Tmux and Zsh configs
Symlink Map
All configs are symlinked by install.sh using safe_link, which is idempotent and creates parent directories automatically.
| Source | Target |
|---|---|
zsh/.zshrc |
~/.zshrc |
git/.gitconfig |
~/.gitconfig |
vim |
~/.vim |
vim/.vimrc |
~/.vimrc |
tmux/.tmux.conf |
~/.tmux.conf |
tmux |
~/.tmux |
ghostty |
~/.config/ghostty |
kitty/kitty.conf |
~/.config/kitty/kitty.conf |
bat/config |
~/.config/bat/config |
eza |
~/.config/eza |
yazi |
~/.config/yazi |
bottom/bottom.toml |
~/.config/bottom/bottom.toml |
lazygit/config.yml |
~/.config/lazygit/config.yml |
lazydocker/config.yml |
~/.config/lazydocker/config.yml |
k9s/config.yml |
~/.config/k9s/config.yml |
k9s/skins |
~/.config/k9s/skins |
tealdeer/config.toml |
~/.config/tealdeer/config.toml |
htop/htoprc |
~/.config/htop/htoprc |
gh/config.yml |
~/.config/gh/config.yml |
glab/config.yml |
~/.config/glab-cli/config.yml |
gnupg |
~/.gnupg |
ssh |
~/.ssh |
claude |
~/.claude |
nodejs/.npmrc |
~/.npmrc |
nodejs/.yarnrc.yml |
~/.yarnrc.yml |
nodejs/.pnpmrc |
~/.pnpmrc |
mutt/.muttrc |
~/.muttrc |
mutt |
~/.mutt |
curl/.curlrc |
~/.curlrc |
wget/.wgetrc |
~/.wgetrc |
readline/.inputrc |
~/.inputrc |
ripgrep/.ripgreprc |
~/.ripgreprc |
fd/.fdrc |
~/.fdrc |
telnet/.telnetrc |
~/.telnetrc |
cmus/rc |
~/.config/cmus/rc |
On macOS, lazygit, lazydocker, k9s, and ghostty also get symlinks into ~/Library/Application Support/.
.dotfiles/
├── bat/ # Bat config + Tokyo Night theme
├── bottom/ # Bottom system monitor, Tokyo Night styled
├── claude/ # Claude Code: 17 rules, 18 skills, hooks, MCP
├── cmus/ # cmus music player, Tokyo Night themed
├── conky/ # Conky system monitor (Linux)
├── curl/ # Curl config
├── eza/ # eza (ls replacement) config + Tokyo Night theme
├── fd/ # fd (find replacement) config
├── gh/ # GitHub CLI config
├── ghostty/ # Ghostty terminal + Tokyo Night theme
├── git/ # Git config, hooks, message template, 60 aliases
├── glab/ # GitLab CLI config
├── gnupg/ # GPG config and public keys
├── htop/ # htop config
├── k9s/ # K9s Kubernetes dashboard + Tokyo Night skin
├── kitty/ # Kitty terminal + Tokyo Night theme
├── lazydocker/ # Lazydocker config, Tokyo Night
├── lazygit/ # Lazygit config, Tokyo Night
├── mailcap/ # Mailcap config
├── mutt/ # Neomutt email client + Tokyo Night theme
├── nodejs/ # npm, yarn, pnpm configs + GPG-encrypted tokens
├── readline/ # Readline config
├── ripgrep/ # Ripgrep config
├── ssh/ # SSH config and public keys
├── tealdeer/ # Tealdeer (tldr) config, Tokyo Night
├── telnet/ # Telnet config
├── themes/ # Terminal themes (iTerm2)
├── tilix/ # Tilix terminal config
├── tmux/ # Tmux config + 7 plugins
├── vim/ # Vim config + 24 plugins
├── wget/ # Wget config
├── yazi/ # Yazi file manager + Tokyo Night theme
├── zsh/ # Zsh: aliases, functions, paths, settings, infrastructure
├── Brewfile # 141 packages, 57 apps, 72 fonts
├── install.sh # Cross-platform installer
└── LICENSE # MIT
Adding New Configs
- Create a directory:
myapp/ - Add config files
- Add to
install.sh:safe_link "$HOME/.dotfiles/myapp" "$HOME/.config/myapp"
Security
Private keys and credentials are excluded via .gitignore. Only public GPG keys and SSH public keys are tracked. API tokens are stored as GPG-encrypted files and decrypted at shell startup with caching.
License
MIT since 2014.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi