{"id":14061958,"url":"https://github.com/sspaeti/dotfiles","last_synced_at":"2026-02-05T16:09:41.252Z","repository":{"id":43362818,"uuid":"396966139","full_name":"sspaeti/dotfiles","owner":"sspaeti","description":"My nvim, zsh, kitty, obsidian, tmux, and other config files and utility scripts.","archived":false,"fork":false,"pushed_at":"2026-01-23T07:05:50.000Z","size":9138,"stargazers_count":193,"open_issues_count":0,"forks_count":13,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-01-24T00:33:34.307Z","etag":null,"topics":["dotfiles","linux","macos","nvim"],"latest_commit_sha":null,"homepage":"https://dotfiles.ssp.sh","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sspaeti.png","metadata":{"files":{"readme":"README.md","changelog":"newsboat/.config/newsboat/Makefile","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-08-16T20:46:01.000Z","updated_at":"2026-01-23T07:05:53.000Z","dependencies_parsed_at":"2023-11-10T13:36:31.783Z","dependency_job_id":"31d6b862-501a-4325-9e6d-ef1127c4c7f6","html_url":"https://github.com/sspaeti/dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sspaeti/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sspaeti%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sspaeti%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sspaeti%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sspaeti%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sspaeti","download_url":"https://codeload.github.com/sspaeti/dotfiles/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sspaeti%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29125134,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T14:05:12.718Z","status":"ssl_error","status_checked_at":"2026-02-05T14:03:53.078Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dotfiles","linux","macos","nvim"],"created_at":"2024-08-13T07:00:53.026Z","updated_at":"2026-02-05T16:09:41.247Z","avatar_url":"https://github.com/sspaeti.png","language":"Shell","readme":"\n# Dotfiles\n\nWelcome to my dotfiles, the backbone of my development, backed by my [vim workflow](https://www.ssp.sh/blog/my-vimverse/), [PKM workflow](https://www.ssp.sh/blog/pkm-workflow-for-a-deeper-life/) or [Obsidian workflow](https://www.ssp.sh/blog/obsidian-note-taking-workflow/).\n\nThe dotfile here are fine-tuned to create an environment that's efficient for me, and, most importantly, give me joy workin in. Check out the details below.\n\n![Neovim, Tmux, and Kitty](_images/nvim_tmux_220701.png)\n\n\n## Key Components\n- **OS** Linux with [Omarchy](https://omarchy.org) (since July 2025, before macOS)\n- **Window Manager** [Hyprland](https://hypr.land/) (before `skhd` and `yabai`)\n- **Editor / [PDE](https://youtu.be/QMVIJhC9Veg)**: [NeoVim](https://neovim.io/)\n- **Color Theme**: [Kanagawa](https://github.com/rebelot/kanagawa.nvim) (mix between [gruvbox](https://github.com/morhetz/gruvbox) and [tokyonight](https://github.com/folke/tokyonight.nvim)!). Announced [here](https://www.reddit.com/r/neovim/comments/rm92q6/kanagawanvim_if_gruvbox_and_tokyonight_had_a_baby/) on reddit\n- **Multiplexer**: [Tmux](https://github.com/tmux/tmux/wiki)\n- **Window Management**: Yabai, Skhd and Mission Control shortcuts for seamless navigation (more below)\n- **Terminal**: [Kitty](https://github.com/kovidgoyal/kitty), Ghostty\n- **Note-Taking**: [Obsidian](https://ssp.sh/brain/obsidian), where my Second Brain thrives\n\n#### Terminal Powered Workflow [[More Images](https://www.ssp.sh/brain/neovim/#my-setup-images)]\n![power of terminal bases workflow](_images/neovim-and-terminal-power.png)\n\nIn one screen:\n1. data integration/dbt code\n2. analysis of SQL queries\n3. db connections/browser\n4. result of queries\n5. docker build\n6. dbt run\n7. postgres\n8. more windows/sessions (Tmux)\n\n\n\n## Screen alignment\n\nI have tried [many setups](https://www.ssp.sh/brain/computer-desk-setup-todays-office/), a single-screen (or one extra for meetings) has worked best with these shorcuts to switch betweent them instantly:\n\n- `Alt+1`: Terminal for coding\n- `Alt+2`: Obsidian for notes, thinking, writing, and my [Second Brain](https://www.ssp.sh/brain/) ([GitHub](https://github.com/sspaeti/second-brain-public))\n- `Alt+3`: Browser for research and browsing needs\n- `Alt+4`: Music, featuring Spotify and Focus@Will for all things auditory\n- `Alt+5`: Collaboration tools like Slack, Asana, Nirvana, and my to-do lists\n- `Alt+6`: Extra (when laptop screen is open): Additional screens for meetings with Zoom, etc.\n- `Alt+7`: Extra (when laptop screen is open)\n\n## [Obsidian](https://www.ssp.sh/brain/obsidian) \n\n![](_images/obsidian.jpeg)\n\nI made two of my own Themes, they are called [Kanagawa](https://github.com/sspaeti/obsidian_kanagawa) and [Rosé Pine](https://github.com/sspaeti/obsidian_rose_pine).\nAlso check my YT video [How I use Obsidian](https://youtu.be/myHKHM2mIis), in case that's interest you.\n\n\n\n### Neovim as a Word Processor\n\nFor my Micro Journal I converted my Neovim config to a minimal config soley for writing. My goal was to reproduce my Obsidian environment within Neovim, running on a small, distraction-free typewriter.\nSee all details in [Neovim as a WordProcessor](./nvim-wp/)\n\n## Installation\n\nI use [Stow](https://www.gnu.org/software/stow/) to manage my dotfiles. I created a [Makefile](Makefile) to stow them for Mac and Linux respectively. But I'd suggest to not blindly run them, but rather choose and pick what you like from my dotfiles.\n\nBut you can run `make linux` and it will stow all shared + linux dotfiles I set. But you can also just install one specific dotfile with `stow nvim` for my Neovim installation. Please check the docs for further information how it works.\n\nMy setup is I clone this dotfiles repo in `~/git/general/dotfiles` and in `~/.stowrc` I set the target stow directory to `--target=/home/sspaeti` as the default stow target is the partent directory which in my case would be wrong (general-dir).\n\n### Operation System\nI used MacOS 15+ years, Windows at work and now [Arch Linux with Omarchy](https://www.ssp.sh/blog/macbook-to-arch-linux-omarchy/). \n\nI have all settings in one folder with stow, except Windows. It's in it's own folder under [Windows directory](windows) .\n\n## Others\n\n### Oh-my-zsh\n\nCheck [latest](https://ohmyz.sh/#install):\n```sh\nsh -c \"$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)\"\n```\n\n## Root files\nThere are some root files not handled with Stow. These are just keep in my dots as reference and are manually kept up to date. see [linux_root](linux_root/README.md).\n\n## Copy files over\n\n### Allow ssh on old Linux computer\n\n```\nsudo systemctl enable --now sshd\n```\n\n### Obsidian\nactivate sync, and create symlinks blog, writing, etc.\ncheck settings and appearance, eventough .obsidian is moved, they don't take the settings\n-\u003e I didn't stow all the themes etc. I think? -\u003e use obsidian sync for that\n\n### Copy files over\n\n```\nrsync -avy --progress sspaeti@192.168.1.18:~/.ssh ~/\nrsync -avy --progress sspaeti@192.168.1.18:~/.dotfiles/zsh/secrets ~/.dotfiles/zsh/secrets\nrsync -avy --progress sspaeti@192.168.1.18:~/.local/share/zoxide ~/.local/share/\nrsync -avy --progress sspaeti@192.168.1.18:~/.local/share/kdenlive ~/.local/share/\nrsync -avy --progress sspaeti@192.168.1.18:~/.local/bin ~/.local/\nrsync -avy --progress sspaeti@192.168.1.18:~/Simon ~/\nrsync -avy --progress sspaeti@192.168.1.18:~/git ~/git/\nrsync -avy --progress sspaeti@192.168.1.18:~/Documents/ ~/Documents/\nrsync -avy --progress sspaeti@192.168.1.18:~/Downloads/ ~/Downloads/\nrsync -avy --progress sspaeti@192.168.1.18:~/Videos/ ~/Videos/\nrsync -avy --progress sspaeti@192.168.1.18:~/Pictures/ ~/Pictures/\n```\n\n### Keyboard Kanata\n\n```\nmake install-kanata\n```\nand \n\nAdd `/etc/sudoers.d/00_sspaeti` see [readme kanata](kanta/.config/kanata/readme.md)\n\n### sudo time out password\nTODO update X-times wrong password and how long until I can re-enter\n\n### Tmux\n\nAfter stowing tmux, run this command to ensure clean plugin installation:\n```\nrm -rf ~/.tmux/plugins \u0026\u0026 tmux new-session -d \u0026\u0026 tmux kill-session\n```\nThen open tmux and press `Ctrl+t` + `I` to install all plugins.\n\nIf you see \"tmux resurrect file not found\" errors, press `Ctrl+t` + `Ctrl+s` to save a session first.\n### Manual\n- GIMP: ctrl + del shortcut\n- ..\n- document all special setups here. Can this be automated/copies with ~/.loca/state/? or .local/share?\n\n### Finalize\n\nTurn off ssh again:\n\n```\nsudo systemctl stop sshd\n```\n","funding_links":[],"categories":["AutoHotkey"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsspaeti%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsspaeti%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsspaeti%2Fdotfiles/lists"}