https://github.com/tekeoglan/dotfiles
My personal dotfiles.
https://github.com/tekeoglan/dotfiles
home-manager hyprland nix quickshell vim
Last synced: 6 days ago
JSON representation
My personal dotfiles.
- Host: GitHub
- URL: https://github.com/tekeoglan/dotfiles
- Owner: tekeoglan
- Created: 2025-07-05T17:42:24.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-08-12T09:44:01.000Z (9 months ago)
- Last Synced: 2025-08-12T11:38:20.957Z (9 months ago)
- Topics: home-manager, hyprland, nix, quickshell, vim
- Language: QML
- Homepage:
- Size: 1.01 MB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Tekeoglan's Dotfiles
This repository contains my personal dotfiles, managed with [Nix](https://nixos.org/) and [Home Manager](https://github.com/nix-community/home-manager). This setup allows for reproducible and declarative configuration of my user environment. You should also check out the easy installation method for Nix via [Determinate Systems](https://determinate.systems/posts/determinate-nix-installer).
## Prerequisites
Before you begin, ensure you have [Nix](https://nixos.org/download.html) installed on your system. This configuration is built using Nix Flakes, so you'll need to enable that feature.
## Installation
1. **Clone the repository:**
```bash
git clone https://github.com/tekeoglan/dotfiles ~/.dotfiles
cd ~/.dotfiles
```
2. **Install Nixgl:**
```bash
nix-channel --add https://github.com/nix-community/nixGL/archive/main.tar.gz nixgl && nix-channel --update
nix-env -iA nixgl.auto.nixGLDefault
```
> [!CAUTION]
> You could also install nixGL using Home Manager, but it seems that way you won't get the necessary packages for nixGL to work.
3. **Activate the configuration:**
This command builds and activates the Home Manager configuration specified in `flake.nix`.
```bash
home-manager switch -b bak --impure --flake .#tekeoglan
```
4. **Create a session file:**
```bash
sudo tee /usr/share/wayland-sessions/hyprland.desktop > /dev/null << 'EOF'
[Desktop Entry]
Name=Hyprland
Comment=An intelligent dynamic tiling Wayland compositor
Exec=env GBM_BACKEND=default XDG_SESSION_TYPE=wayland nixGL Hyprland
Type=Application
DesktopNames=Hyprland
Keywords=tiling;wayland;compositor;
EOF
```
If you have nvdia gpu, check out [here](https://github.com/Tramscan/ubuntu-nix-config).
## Structure
* `flake.nix`: The entry point for the Nix Flake, defining inputs and outputs.
* `home.nix`: The main Home Manager configuration file.
* `modules/`: A directory containing modularized parts of the configuration.
* `config/`: Contains the raw configuration files that are symlinked by Home Manager.
* `illogical-impulse/`: Contains the configuration files that relate to [illogical-impulse](https://github.com/end-4/dots-hyprland).
## Customization
To customize this configuration, you can edit the files in the `modules/` and `config/` directories. After making changes, run the `home-manager switch -b bak --impure --flake .#tekeoglan` command again to apply them.
## References
Here are some repositories I used as inspiration for my configuration:
- [nix-config](https://github.com/ryan4yin/nix-config)
- [end-4-dots-hyprland-nixos](https://github.com/xBLACKICEx/end-4-dots-hyprland-nixos)
- [ubuntu-nix-config](https://github.com/Tramscan/ubuntu-nix-config)
## License
This repository is licensed under the [MIT License](LICENSE).