Change directory structure
This commit is contained in:
82
README.md
82
README.md
@@ -1,82 +0,0 @@
|
||||
# dotfiles
|
||||
|
||||
This repository contains my personal dotfiles, managed using [GNU Stow](https://www.gnu.org/software/stow/).
|
||||
|
||||
Using `stow` ensures that all configuration files are cleanly symlinked into your home directory, mirroring the structure of this repository.
|
||||
|
||||
## Requirements
|
||||
|
||||
A script is provided to help install the core dependencies across macOS and common Linux distributions (Ubuntu/Debian, Arch, Fedora).
|
||||
|
||||
To run the installation script:
|
||||
```bash
|
||||
./scripts/install_dependencies.sh
|
||||
```
|
||||
|
||||
Alternatively, you can manually install the required tool:
|
||||
|
||||
- [GNU Stow](https://www.gnu.org/software/stow/)
|
||||
|
||||
To install Stow on macOS, use [Homebrew](https://brew.sh/):
|
||||
```bash
|
||||
brew install stow
|
||||
```
|
||||
|
||||
To install Stow on Linux, use your distribution's package manager:
|
||||
|
||||
**Ubuntu / Debian**
|
||||
```bash
|
||||
sudo apt install stow
|
||||
```
|
||||
|
||||
**Arch Linux**
|
||||
```bash
|
||||
sudo pacman -S stow
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
To install all configurations at once, navigate to the root of this repository and run:
|
||||
|
||||
```bash
|
||||
stow .
|
||||
```
|
||||
|
||||
This will automatically create the necessary symlinks in your `$HOME` directory pointing to the files in this repository.
|
||||
|
||||
### Removing Configurations
|
||||
|
||||
If you want to remove the symlinks created by Stow, use the `-D` flag:
|
||||
|
||||
```bash
|
||||
stow -D .
|
||||
```
|
||||
|
||||
## Directory Structure
|
||||
|
||||
The folder structure directly mirrors its target destination relative to the home (`~/`) directory.
|
||||
|
||||
```text
|
||||
.
|
||||
├── .bashrc # Symlinked to ~/.bashrc
|
||||
├── .config/ # Symlinked to ~/.config/
|
||||
│ ├── alacritty/
|
||||
│ ├── kitty/
|
||||
│ ├── nvim/
|
||||
│ ├── starship.toml
|
||||
│ └── ...
|
||||
├── .fonts/ # Symlinked to ~/.fonts/
|
||||
├── .tmux.conf # Symlinked to ~/.tmux.conf
|
||||
├── .tmux.conf.local # Symlinked to ~/.tmux.conf.local
|
||||
├── .vimrc # Symlinked to ~/.vimrc
|
||||
├── .zshrc # Symlinked to ~/.zshrc
|
||||
├── scripts/ # Symlinked to ~/scripts/
|
||||
├── shell/ # Symlinked to ~/shell/
|
||||
└── wezterm.lua # Symlinked to ~/wezterm.lua
|
||||
```
|
||||
|
||||
### Adding New Configurations
|
||||
|
||||
When you want to add a new tool:
|
||||
1. Replicate the target directory structure inside this repository (e.g., `.config/new_tool/config.toml`).
|
||||
2. Run `stow .` from the root of this repository to link the new files.
|
||||
|
Before Width: | Height: | Size: 694 KiB After Width: | Height: | Size: 694 KiB |
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user