This repo is obsolete, all home-manager configurations are now part of my nixos-config flake.
inputs.home-manager-config = {
url = "github:lwndhrst/home-manager-config";
inputs.nixpkgs.follows = "nixpkgs";
};
# ...
lib.nixosSystem {
inherit lib pkgs system;
specialArgs = {
inherit user;
};
modules = [
./configuration.nix
# Home config from home-manager-config flake
home-manager-config.nixosModules.desktop;
];
};
# ...
-
Install nix via the Determinate Nix Installer.
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install linux --init none
Note: you may need to install a few extra packages, such as
curl
orgit
. -
Initial setup of Home Manager with Flakes.
git clone https://github.com/lwndhrst/home-manager-config ~/.config/home-manager
nix run home-manager/master -- switch
-
Update as follows:
nix flake update && home-manager switch
Get OpenGL and Vulkan to work on non-NixOS Systems with nixGL
Invoke OpenGL/Vulkan programs by prefixing the appropriate wrapper:
nixGLIntel <program> <args>
nixGLMesa <program> <args>
nixGLNvidia <program> <args>
nixVulkanIntel <program> <args>
nixVulkanMesa <program> <args>
nixVulkanNvidia <program> <args>
# devShell config for nix develop
{
inputs = {
nixpkgs = {
url = "github:nixos/nixpkgs/nixos-unstable";
};
nixgl = {
url = "github:guibou/nixGL";
};
};
outputs = { self, nixpkgs, nixgl }:
let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
overlays = [
nixgl.overlays.default
];
};
in {
devShell.${system} = pkgs.mkShell {
packages = with pkgs; [
mesa-demos
pkgs.nixgl.nixGLMesa
];
LD_LIBRARY_PATH = with pkgs; lib.makeLibraryPath [
xorg.libX11
];
};
};
}
-
For removing Windows PATH and disabling execution of Windows binaries on WSL add the following to
/etc/wsl.conf
:[interop] enabled = false appendWindowsPath = false
Note: requires restart of WSL:
wsl --shutdown
. -
Set
zsh
as default shell by first adding its absolute path to/etc/shells
and then runningchsh
/home/<user>/.nix-profile/bin/zsh
chsh -s /home/<user>/.nix-profile/bin/zsh