My personal configs, passionately crafted for setting up an optimal CLI dev experience across platforms.
Hours and nights spent on the terminal, willingness to improve.
I made a recording for setting this up on an Ubuntu system
git clone https://github.com/2kabhishek/dots2k
cd dots2k
# Menu based interactive setup, recommended for beginners
./setup.sh
# Setup everything unattended
./setup.sh -a
If you plan to use this without using the setup script, make sure to install the recommended packages in the
setup.sh
script.
Important
Make sure to change the user.name
and user.email
in the ~/.gitconfig
file with your own or use git config --global user.name "Your Name"
I use GPG signing for commits, check this for setting it up, or use git config --global commit.gpgSign false
to disable it.
I'll recommend Nerd Fonts. I'm using FiraCode 3.11.
Some configs are intentionally not included as they will vary based on every system.
For these, I recommend creating the ~/config/shell/local.sh
file, which you can edit using the loca
alias.
#!/bin/sh
export EDITOR=nvim
export CLIPCOPY=wl-copy
export CLIPPASTE=wl-paste
You can put all your local aliases, env vars and functions here.
dots2k comes with a lot of keybindings, here are some of them:
- bash - The bash shell.
- fish - fish shell configs.
- shell - Shell configuration scripts.
- aliases.sh - Aliases, shared across shells.
- environment.sh - Environment variables, shared across shells.
- functions.sh - Functions, shared across.
- zsh - zsh shell configs.
- .zshrc - Main zsh config, that loads required modules.
- bundle - A Ruby gem dependency manager.
- delta - A syntax-highlighting pager for git and diff output.
- git - Global git configurations.
- gitignore.global - Global gitignore settings, used in gitconfig.
- lazygit - A simple terminal UI for git commands.
- luarc - Configs for the Lua language.
- prettier - A code formatter.
- pry - A Ruby REPL.
- pystartup - Python startup configurations.
- reek - A code smell detector for Ruby.
- stylua - A Lua formatter.
- tmux - A terminal multiplexer.
- typos - A spell checker for code.
- vim - The original text editor.
- bat - A cat clone with syntax highlighting and Git integration.
- cmus - A music player, with a custom theme.
- bluetuith - A Bluetooth TUI.
- dircolors - Sets up color definitions for GNU ls.
- htop - An interactive process viewer.
- inputrc - Configs for readline, used by bash and other CLI programs.
- ranger - A console file manager.
- topgrade - Upgrades all packages.
- alacritty - A cross-platform, OpenGL terminal emulator.
- kitty - A GPU-based terminal emulator.
- konsole - The KDE terminal emulator and a nice color scheme.
- vimium - A browser extension for keyboard navigation.
- chrome - User styles for Chrome, used with Firefox.
- autorandr - Manages display configurations on Xorg.
- compiz - A compositing window manager, configs for xfce.
- conky - A system widget.
- dmenu - A dynamic menu for X.
- fontconfig - Configures and customizes font access.
- greetd - A minimal login manager.
- i3 - A tiling window manager, comes with i3status.
- libinput-gestures - Binds gestures to commands.
- Xresources - Configurations for X applications.
dots2k serves as a core for some of my other dev environments targeted for specific platforms, other tools have their own repos:
- mac2k: Elevate your terminal game on macOS with mac2k
- win2k: Say goodbye to bland command lines on Windows
- termux2k: Supercharge your Android development on the go
- nvim2k: Neovim config for ultimate productivity and efficiency.
- tmux2k: Pretty and functional theme for tmux.
- tmux-tilit: Add window manager-like capabilities to tmux.
- tmux-tea: Powerful tmux session management.
- tdo: Simple and fast note taking.
- mkrepo: Easy and quick GitHub repo setup.
- ghpm: Manage all your GitHub repos.
- gsync: Seamlessly sync your git repos.
- cmtr: Commit changes quick.
- gitrim: Trim unnecessary files from git history.
- posh2k: Eye candy and power for your oh-my-posh based shells.
- starship2k: Fast and pretty shell with starship.
- sway2k: Powerful and flexible window management with sway and Wayland.
- awesome2k: Manage your windows with awesome and Xorg.
- rofi2k: Streamline your Linux workflow with rofi app launcher.
- BWnB: Slightly older theme for KDE and Windows 10.
- Nightbow: Pitch black theme for VS Code.
- refind2k: Pretty boot screen for multi-boot users.
I built dots2k with a lot of love and passion, a lot of sleepless nights. It's an ongoing project, and I'm always looking for ways to improve it.
Getting over the initial learning curve on the command line, failing and trying again :)
While building dots2k I have learned to love the command line, and it's efficiency, have discovered countless tools and techniques, which will serve me for the rest of my days.
Planning to add more tools, better management, always updating.
Hit the ⭐ button if you found this useful.
Find more cool configs and setups at GitHub does dotfiles