Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cjvnjde/dotfiles
A collection of configuration files for setting up a developer-friendly environment.
https://github.com/cjvnjde/dotfiles
Last synced: about 2 months ago
JSON representation
A collection of configuration files for setting up a developer-friendly environment.
- Host: GitHub
- URL: https://github.com/cjvnjde/dotfiles
- Owner: cjvnjde
- Created: 2023-09-30T15:09:53.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-03T11:16:20.000Z (about 2 months ago)
- Last Synced: 2024-12-03T12:23:31.262Z (about 2 months ago)
- Language: Shell
- Homepage:
- Size: 113 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Dotfiles Repository
This repository manages configuration files for various tools and utilities using Git submodules, helping to maintain a consistent and easily reproducible development environment across different machines.
## Getting Started
### Requirements
#### Global deps
- [Nerd Fonts](https://www.nerdfonts.com/)
- [Oh My Zsh](https://ohmyz.sh/)
- [asdf](https://asdf-vm.com) package version manager
- [lf](https://github.com/gokcehan/lf) file manager
- [tldr](https://github.com/tldr-pages/tldr) simpler man command#### Terminal deps
- [atuin](https://github.com/atuinsh/atuin) search in terminal history
- [eza](https://github.com/eza-community/eza) lf alternative
- [fzf](https://github.com/junegunn/fzf)
- [delta](https://github.com/dandavison/delta)#### Home deps
- [zoxide](https://github.com/ajeetdsouza/zoxide) better autojump
- [zsh node-bin](https://github.com/remcohaszing/zsh-node-bin)
- [thefuck](https://github.com/nvbn/thefuck)
- [bat](https://github.com/sharkdp/bat)#### nvim deps
- [fzf](https://github.com/junegunn/fzf)
- [ripgrep](https://github.com/BurntSushi/ripgrep)### different
- [btop](https://github.com/aristocratos/btop) system monitoring tool
## Notes
Core theme - catppuccin Mocha
### Installation
1. Clone the repository along with its submodules:
```shell
git clone --recurse-submodules [email protected]:cjvnjde/dotfiles.git $HOME/dotfiles
```2. Run the setup script to create symbolic links for your dotfiles:
```shell
$HOME/dotfiles/setup.sh
```## Usage
### Adding New Dotfiles
1. Add the external configuration repository as a submodule:
```sh
git submodule add [email protected]:cjvnjde/reponame.git path/to/repo
```2. Update the associative array in the `setup.sh` script:
```bash
dotfiles=(
...
"path/to/file:path/to/symbolic"
)
```3. Run the setup script to create the symbolic link:
```sh
$HOME/dotfiles/setup.sh
```4. Commit and push your changes:
```sh
git add .
git commit -m "Add repo submodule"
git push
```### Updating Dotfiles
1. Pull the latest changes, including submodule updates:
```sh
git pull --recurse-submodules
```2. Run the setup script to apply the changes:
```sh
./setup.sh
```## Platform Specific Configuration for Zsh
1. **Navigate to Your Home Directory**:
```sh
cd $HOME
```2. **Create the `.zshrc_local` File**:
If it doesn't already exist, create the `.zshrc_local` file.
```sh
touch .zshrc_local
```3. **Edit the `.zshrc_local` File**:
Open the file in your preferred text editor.
```sh
nano .zshrc_local # or use vim, code, etc.
```Add your platform-specific configurations, aliases, environment variables, etc., to this file.