https://github.com/tshm/dotfiles
collection of configuration files
https://github.com/tshm/dotfiles
Last synced: 2 months ago
JSON representation
collection of configuration files
- Host: GitHub
- URL: https://github.com/tshm/dotfiles
- Owner: tshm
- License: mit
- Created: 2014-02-03T06:47:01.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2024-10-30T06:13:47.000Z (over 1 year ago)
- Last Synced: 2024-10-30T07:26:59.212Z (over 1 year ago)
- Language: Lua
- Size: 370 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# My Dotfiles
This repository contains my personal collection of configuration files,
also known as dotfiles. It's tailored for my development environment,
primarily using NixOS, but with support for other systems as well.
## Structure
The repository is organized as follows:
- `homes/`: Contains Home Manager configurations for different user environments.
- `hosts/`: Contains NixOS configurations for different machines, including minf, spi, usb, x360, and t440p.
- `k8s/`: Kubernetes configurations and related tools.
- `vim/nvim/`: Neovim configuration.
- `zsh/`: Zsh shell configuration.
- `x/`: X11 and Wayland configurations.
- `flake.nix`: The entry point for the Nix configurations,
managing dependencies and outputs.
- `Makefile`: Provides convenience targets for setting up and managing the dotfiles.
## Installation
These dotfiles are managed using Nix and Home Manager.
- For NixOS:
```bash
make all
```
- For other systems (with Nix installed):
```bash
make home-manager
```
The `Makefile` provides other useful targets:
- `make update`: Update all flake inputs.
- `make clean`: Clean up old Nix generations.
## Dependencies
This project uses [Nix Flakes](https://nixos.wiki/wiki/Flakes) to manage dependencies.
The main dependencies are:
- [nixpkgs](https://github.com/Nixos/nixpkgs)
- [home-manager](https://github.com/nix-community/home-manager)
- [catppuccin](https://github.com/catppuccin/nix)
Development dependencies are managed by [pre-commit](https://pre-commit.com/):
- [pre-commit-hooks](https://github.com/pre-commit/pre-commit-hooks)
- local Nix syntax checking via `nix-instantiate --parse`
- [commitizen](https://github.com/commitizen-tools/commitizen)
This repository also uses [Renovate](https://www.mend.io/free-developer-tools/renovate/)
to keep dependencies up to date.