Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xevion/dotfiles
https://github.com/xevion/dotfiles
Last synced: 13 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/xevion/dotfiles
- Owner: Xevion
- Created: 2024-01-10T01:43:57.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2024-11-05T23:29:03.000Z (about 2 months ago)
- Last Synced: 2024-11-06T00:25:35.743Z (about 2 months ago)
- Language: Shell
- Size: 111 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# dotfiles
[![wakatime](https://wakatime.com/badge/user/f362871f-b27f-44c8-88eb-c2108ff82eb2/project/018cf683-de72-49c0-98d1-7af6dd2b0b63.svg)](https://wakatime.com/badge/user/f362871f-b27f-44c8-88eb-c2108ff82eb2/project/018cf683-de72-49c0-98d1-7af6dd2b0b63)
A [chezmoi][chezmoi]-activated dotfiles repository containing all settings related to any number of activities for me: [**Xevion**](https://xevion.dev).
This repository is not intended for others, but is kept public in the spirit of Open Source, as well as a test of my ability to build an encrypted config in the open.
> [!NOTE]
> If you're not used to Chezmoi, it's a dotfile manager for multiple machines, with special abilities like templating, encryption, secret management, scripting, and more.> [!WARNING]
> While Chezmoi is a powerful tool with mass configurability, it is not a fully featured declarative configuration manager. This warning is more for myself than others: if you want a fully declarative OS, go install NixOS dumbass.## Links
Documentation, references, etc.
- [www.chezmoi.io][chezmoi]
## Important Commands
Commands that are of chief importance for managing the repository, scripts, etc.
#### Installation/Bootstrap
```bash
# Install only
sh -c "$(curl -fsLS get.chezmoi.io)" -- init Xevion -b $HOME/.local/bin# Bootstrap immediately (apply configurations, potentially overwriting existing files)
sh -c "$(curl -fsLS get.chezmoi.io)" -- init Xevion -b $HOME/.local/bin --apply
```#### Basic
```bash
# Change to the dotfiles 'source' directory
chezmoi cd
# With a specific directory
chezmoi cd ~/.ssh/
```#### Status
```bash
# Print all unmanaged files in the home directory (tree style, absolute path)
chezmoi unmanaged ~/ -t -p absolute
```- Not yet developed
- List all changed config files (source vs )
- Show diffing, search via `fzf` or something.
- Show diffing, fuzzy matching## Intended Goals
- Lock rbw automatically
- 8 hour session by default
- Lock when computer sleeps, idle, screen saver
- Encrypted configurations for private details
- Bootstrapping for any Ubuntu-based system
- WSL-support
- Windows integration?
- Device-specific configuration
- Automatic package/script install/setup
- Neovim
- VS Code
- Terminal startup for when configs changed, out of date, etc.
- Ideally, this would run on a timer and only fetch the latest status upon terminal startup, keeping startup times low.
- GitHub Language Attributes Script
- Automatically update the language attributes for GitHub repositories
- Prehook for commits, updates .gitattributes
- [Reference](https://github.com/github-linguist/linguist/blob/main/docs/overrides.md)[chezmoi]: https://www.chezmoi.io/