https://github.com/cworld1/dotfiles
Personal *unix dotfiles
https://github.com/cworld1/dotfiles
arch-linux dotfiles hyprland-config macos wsl2
Last synced: 4 months ago
JSON representation
Personal *unix dotfiles
- Host: GitHub
- URL: https://github.com/cworld1/dotfiles
- Owner: cworld1
- License: agpl-3.0
- Created: 2023-08-25T13:50:01.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-12-28T03:48:14.000Z (6 months ago)
- Last Synced: 2025-12-30T09:32:08.417Z (6 months ago)
- Topics: arch-linux, dotfiles, hyprland-config, macos, wsl2
- Language: Shell
- Homepage:
- Size: 8.65 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dotfiles
Dotfiles of CWorld.
For Arch Linux dotfiles, check the [`archlinux` branch](https://github.com/cworld1/dotfiles/tree/archlinux) for more.
## Support platform
- macOS (recommend)
- Windows with msys
- Universal linux
## Support packages
Config files contains configs of the following packages:
- [podman](https://github.com/containers/podman) (go)
- [fastfetch](https://github.com/fastfetch-cli/fastfetch) (c)
- [fish](https://github.com/fish-shell/fish-shell) (rust)
- [git](https://github.com/git/git) (c)
- [jj](https://www.jj-vcs.dev/latest/) (rust)
- [pip](https://github.com/pypa/pip) (python)
- [python](https://github.com/python/cpython) (python)
- [surfingkeys](https://github.com/brookhong/Surfingkeys) (chrome/edge/firefox plugin)
- [yazi](https://github.com/sxyazi/yazi) (rust)
- [zellij](https://github.com/zellij-org/zellij) ([zjstatus](https://github.com/dj95/zjstatus)) (rust)
If you don't want to use any of them, just skip creating link to it.
- Delete it or move to another path from the `config` folder before running `install.sh`.
Extra fish shell configs for:
- [cmake](https://github.com/Kitware/CMake) (c)
- [eza](https://github.com/eza-community/eza) (rust)
- [fzf](https://github.com/junegunn/fzf) (go)
- [git](https://github.com/git/git) (c)
- [homebrew](https://github.com/Homebrew/brew) (ruby)
- [jj](https://www.jj-vcs.dev/latest/) (rust)
- [neovim](https://github.com/neovim/neovim) (vimscript)
- [pacman](https://gitlab.archlinux.org/pacman/pacman) (c)
- pass
- [pnpm](https://github.com/pnpm/pnpm) (typescript)
- [podman](https://github.com/containers/podman) (go)
- [python](https://github.com/python/cpython) (python)
- [rust](https://github.com/rust-lang/rust) (rust)
- [scoop](https://github.com/ScoopInstaller/Scoop) (powershell)
- [vscode](https://github.com/microsoft/vscode) (typescript)
- [yazi](https://github.com/sxyazi/yazi) (rust)
- [zellij](https://github.com/zellij-org/zellij) ([zjstatus](https://github.com/dj95/zjstatus)) (rust)
- [zoxide](https://github.com/ajeetdsouza/zoxide) (rust)
You can enable them by uncomment line in `/custom.fish`.
## Recommend packages
Config of [neovim](https://github.com/neovim/neovim) config is a little complex. I choose to make configs in another repo [nvim-config](https://github.com/cworld1/nvim-config/).
These packages don't need any configs, but I use it and having a good experiences.
- [onefetch](https://github.com/o2sh/onefetch/) (rust)
- [ripgrep](https://github.com/BurntSushi/ripgrep) (rust)
- [tldr](https://github.com/isacikgoz/tldr) (go interactive version)
## Installation
```shell
# For macOS or Linux
bash install.sh
# For Windows
pwsh install.ps1
# Or only link the specific directory
bash install.sh fish
```
> `install.sh` will help you create soft link to `$XDG_CONFIG_HOME` or `$HOME/.config`. If there exists conflicts, it will create backups automatically.
Other options:
- `-f` / `--force`: won't create `.bak` backups even the target path has the same folder. It may be useful for Windows ln link.
- `-h` / `--help`: display help.
## Known issues
- Windows fish shell by Msys(Cygwin) need its conf file `fish_variables` must be `lf` format. Otherwise it cannot find the right variables.
- Archlinux users are recommend to install: `dhcpcd less tree terminus-font`