8000 GitHub - seroperson/dotfiles: My nix-powered dotfiles
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

seroperson/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

seroperson's dotfiles

Configuration which I use for my development purposes. Not so recently I migrated all the dotfiles management to nix and it 78FF 's still WIP, but mostly should work ok.

Used software

Mostly I use well-known things:

  • zsh - powered by zgenom plugin manager, lightweight shell.
  • nvim - initially I have used self-written config, but then switched to astronvim community distribution as long as managing well-prepared nvim configuration is a pretty hard task as for today.
  • tmux - terminal multiplexer, configuration managed by nix (see nix/tmux.nix file).

And also some set of handy tools, such as exa, jq, rg.

Installation

Initially, only nix and git must be installed. Be sure that nix is up-to-date:

nix-channel --add https://nixos.org/channels/nixpkgs-unstable
nix-channel --update

Clone the repository:

git clone https://github.com/seroperson/dotfiles $HOME/.dotfiles/

And then let the home-manager do the rest:

nix --extra-experimental-features "nix-command flakes" run home-manager/release-24.11 -- init --switch $HOME/.dotfiles/

Next, you should do chsh $USER -s $HOME/.nix-profile/bin/zsh and re-login.

Finally, be sure to install nerd-font and catpuccin mocha theme for your terminal.

Preview without installation

To build this configuration without applying, first you have to build it:

docker run --rm -it --entrypoint bash cguenther/ubuntu-nix:24.04-9
nix develop --impure github:seroperson/dotfiles

Update packages

In order to update installed packages, use the following commands:

nix-channel --update
nix-env -u --always
nix flake update

And then re-init home-mmanager with command from section above.

Troubleshooting

Usually nix doesn't work as expected and you don't know what to do. It is good idea to start your troubleshooting with global cleanup:

nix-channel --update
nix-env -u --always
rm /nix/var/nix/gcroots/auto/*
rm -rf $HOME/.cache/nix
nix-collect-garbage -d

Also it's possible to debug nix variables using nix repl. For example, to load flake into repl, you can do the following:

nix repl

nix-repl> :lf ./
nix-repl> builtins.attrNames homeConfigurations.seroperson

Nix Guides

nix is not easy thing to get started with, but luckily it has a lot of guides available across the web. Here are some of them:

0