https://github.com/monoira/.dotfiles
Dotfiles managed via GNU/Stow on Ubuntu
https://github.com/monoira/.dotfiles
automation cmus cmus-music-player dotfiles dotfiles-automation dotfiles-linux git gitconfig kitty kitty-config lazyvim lazyvim-setup neovim neovim-config neovim-dotfiles ubuntu zsh zshrc
Last synced: 2 days ago
JSON representation
Dotfiles managed via GNU/Stow on Ubuntu
- Host: GitHub
- URL: https://github.com/monoira/.dotfiles
- Owner: monoira
- Created: 2024-05-04T13:21:45.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-06T10:45:18.000Z (12 days ago)
- Last Synced: 2025-06-06T11:35:47.519Z (11 days ago)
- Topics: automation, cmus, cmus-music-player, dotfiles, dotfiles-automation, dotfiles-linux, git, gitconfig, kitty, kitty-config, lazyvim, lazyvim-setup, neovim, neovim-config, neovim-dotfiles, ubuntu, zsh, zshrc
- Language: Shell
- Homepage:
- Size: 3.7 MB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
- [table of content](#table-of-content)
- [what i keep in this repository](#what-i-keep-in-this-repository)
- [requirements and dependencies](#requirements-and-dependencies)
- [requirements](#requirements)
- [dependency packages](#dependency-packages)
- [install dependency packages with this one command](#install-dependency-packages-with-this-one-command)
- [what does all of this do?](#what-does-all-of-this-do)
- [installation](#installation)
- [install OhMyZsh](#install-ohmyzsh)
- [install dotfiles](#install-dotfiles)
- [for vim-dadbod if using neovim](#for-vim-dadbod-if-using-neovim)
- [manual tasks that can not be automated](#manual-tasks-that-can-not-be-automated)
- [optional tips you might want to consider](#optional-tips-you-might-want-to-consider)
- [Q\&A why are you using both snap and flatpak?](#qa-why-are-you-using-both-snap-and-flatpak)
- [DONATE](#donate)# table of content
## what i keep in this repository
- VSCode profile / settings and workspaces as primary code editor.
Setup with AI Agent and vim keybindings in mind for maximum productivity.
[setup.sh](./vscode/setup.sh) automates sharing of nvim and vscode snippets
via GNU/ln and sets up global settings.json.
- dotfiles and configs managed by GNU/Stow - Neovim, Kitty, Zsh, Cmus, gitconfig,
and more
- zsh functions
- Various installation scripts## requirements and dependencies
### requirements
- Be on Ubuntu
- Bash -- Already preinstalled on Debian based distributions
- Gnome desktop environment installed and
running -- needed for [gnome_settings.sh](./install_scripts/gnome_settings.sh)
- Have ssh key configured w/GitHub to clone using ssh.### dependency packages
- wget
- stow
- git### install dependency packages with this one command
```bash
sudo apt install -y wget stow git
```## what does all of this do?
- Installs useful and necessary apt and snap packages
- Installs nerd font: Hack Nerd Font
- Installs lazygit
- Installs lazydocker
- Installs vimv
- Configures gnome settings with gsettings to:
hide trash on dash-to-dock, hide home, disable notifications, etc.And possibly more.
For full info, check scripts themselves at
[start.sh](./start.sh)
and
[install_scripts](./install_scripts/) directory## installation
### install OhMyZsh
```bash
sudo apt install -y zsh
``````bash
sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
``````bash
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
``````bash
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
```### install dotfiles
```bash
wget -qO- https://raw.githubusercontent.com/monoira/.dotfiles/main/start.sh | bash
```### for vim-dadbod if using neovim
- create file `~/.config/nvim/lua/config/dbs.lua` with such content
```lua
vim.g.dbs = {
{ name = "dev", url = "postgres://USERNAME:PASSWORD@HOST:PORT/DATABASE_NAME" },
}
```- Replace
USERNAME, PASSWORD, HOST, PORT and DATABASE_NAME
with your local postgresql database data.**When everything finishes, reboot your system! VERY IMPORTANT!**
## manual tasks that can not be automated
- change refresh rate in `settings > refresh rate` to 155 Hz
- add a keyboard layout
- in `about:config` of firefox, change these:
- `full-screen-api.warning.timeout` to `0`
- `extensions.pocket.enabled` to `false`
- place packages based on the following image:

- add [Vim extension to Dbeaver manually](https://www.youtube.com/watch?v=soznrFTtL2s)## optional tips you might want to consider
- pause auto update / refresh of all snap packages
```bash
sudo snap refresh --hold
```- use latest lts version of nodejs and npm via nvm
```bash
nvm install --lts && nvm use --lts
```## Q&A why are you using both snap and flatpak?
I tried to only use flatpak, but had some problems with following packages
- neovim
Neovim in apt is severely outdated, PPA version is outdated and
flatpak version is TERRIBLE, buggy and overly sandboxed.
Building .deb package with "dpkg -i" means it won't update.- steam
Installing via flatpak or apt steam-installer didn't worked, since
it kept giving me unmet dependencies error.
Building .deb package with "dpkg -i" means it won't update.
I WILL CHECK LATER. Until then, I have to use snap version.- figma-linux
Can't install via apt or flatpak.
Building .deb package with "dpkg -i" means it won't update.I would love to only use flatpak and get away from snap,
But it is what it is.
I will re-check in the future if I can replace those packages
with non-snap versions and finally be snap-free.## DONATE
I've been creating FOSS / GNU/Linux / nvim / web
related software for some time now.
If you used, forked or took code from one of my projects and you
would like to support me 👍,
you can donate here:| type | address |
| ------------------- | ------------------------------------------ |
| Bitcoin (SegWit) | bc1ql8sp9shx4svzlwv0ckzv8s7pphw5upvmt8m2m7 |
| Ethereum (Ethereum) | 0xf2FCB0Af39DF7A608b76297e45181aF23fEB939F |