Compare commits
5 Commits
5a2c019d22
...
dbd6c31160
Author | SHA1 | Date | |
---|---|---|---|
dbd6c31160 | |||
ecbcd74579 | |||
e510b26e23 | |||
37a67dfd35 | |||
213a0431cf |
@ -58,23 +58,6 @@
|
|||||||
# Enable CUPS to print documents.
|
# Enable CUPS to print documents.
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
|
||||||
sound.enable = true;
|
|
||||||
hardware.pulseaudio.enable = false;
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
services.pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
alsa.support32Bit = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
# If you want to use JACK applications, uncomment this
|
|
||||||
jack.enable = true;
|
|
||||||
|
|
||||||
# use the example session manager (no others are packaged yet so this is enabled by default,
|
|
||||||
# no need to redefine it in your config for now)
|
|
||||||
#media-session.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable touchpad support (enabled default in most desktopManager).
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
# services.xserver.libinput.enable = true;
|
# services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
@ -102,20 +85,9 @@
|
|||||||
neovim
|
neovim
|
||||||
wget
|
wget
|
||||||
fprintd
|
fprintd
|
||||||
binutils
|
|
||||||
usbutils
|
|
||||||
pciutils
|
|
||||||
home-manager
|
home-manager
|
||||||
git
|
git
|
||||||
gcc
|
|
||||||
clang
|
|
||||||
clang_multi
|
|
||||||
libclang
|
|
||||||
clang-tools
|
|
||||||
alejandra
|
alejandra
|
||||||
libnotify
|
|
||||||
gnomeExtensions.hibernate-status-button
|
|
||||||
ffmpeg
|
|
||||||
];
|
];
|
||||||
|
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
@ -132,17 +104,6 @@
|
|||||||
programs.ssh.startAgent = true;
|
programs.ssh.startAgent = true;
|
||||||
programs.nix-ld.enable = true;
|
programs.nix-ld.enable = true;
|
||||||
programs.nix-ld.libraries = with pkgs; [
|
programs.nix-ld.libraries = with pkgs; [
|
||||||
glfw
|
|
||||||
wayland-protocols
|
|
||||||
libxkbcommon
|
|
||||||
xorg.libX11
|
|
||||||
xorg.libXinerama
|
|
||||||
xorg.libXcursor
|
|
||||||
xorg.libXrandr
|
|
||||||
xorg.libXi
|
|
||||||
xorg.libXext
|
|
||||||
libGL
|
|
||||||
libGLU
|
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
|
@ -14,6 +14,10 @@
|
|||||||
# often used terminal programs
|
# often used terminal programs
|
||||||
../../modules/home-manager/btop.nix
|
../../modules/home-manager/btop.nix
|
||||||
../../modules/home-manager/bat.nix
|
../../modules/home-manager/bat.nix
|
||||||
|
../../modules/home-manager/lazygit.nix
|
||||||
|
../../modules/home-manager/git.nix
|
||||||
|
# use mpd for music
|
||||||
|
../../modules/home-manager/mpd.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
# Home Manager needs a bit of information about you and the paths it should
|
||||||
@ -35,7 +39,6 @@
|
|||||||
# The home.packages option allows you to install Nix packages into your
|
# The home.packages option allows you to install Nix packages into your
|
||||||
# environment.
|
# environment.
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
lazygit
|
|
||||||
unzip
|
unzip
|
||||||
rustup
|
rustup
|
||||||
nextcloud-client
|
nextcloud-client
|
||||||
@ -46,10 +49,6 @@
|
|||||||
prismlauncher
|
prismlauncher
|
||||||
steam
|
steam
|
||||||
blender
|
blender
|
||||||
mpd
|
|
||||||
mpdris2
|
|
||||||
mpc-cli
|
|
||||||
ymuse
|
|
||||||
flip-link
|
flip-link
|
||||||
bacon
|
bacon
|
||||||
probe-rs
|
probe-rs
|
||||||
@ -63,49 +62,14 @@
|
|||||||
sops
|
sops
|
||||||
];
|
];
|
||||||
|
|
||||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
|
||||||
# plain files is through 'home.file'.
|
|
||||||
home.file = {
|
|
||||||
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
|
||||||
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
|
||||||
# # symlink to the Nix store copy.
|
|
||||||
# ".screenrc".source = dotfiles/screenrc;
|
|
||||||
|
|
||||||
# # You can also set the file content immediately.
|
|
||||||
# ".gradle/gradle.properties".text = ''
|
|
||||||
# org.gradle.console=verbose
|
|
||||||
# org.gradle.daemon.idletimeout=3600000
|
|
||||||
# '';
|
|
||||||
};
|
|
||||||
|
|
||||||
# Home Manager can also manage your environment variables through
|
|
||||||
# 'home.sessionVariables'. If you don't want to manage your shell through Home
|
|
||||||
# Manager then you have to manually source 'hm-session-vars.sh' located at
|
|
||||||
# either
|
|
||||||
#
|
|
||||||
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
# or
|
|
||||||
#
|
|
||||||
# ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
# or
|
|
||||||
#
|
|
||||||
# /etc/profiles/per-user/max/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "nvim";
|
EDITOR = "nvim";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
xdg.enable = true;
|
||||||
|
|
||||||
services.nextcloud-client.enable = true;
|
services.nextcloud-client.enable = true;
|
||||||
|
|
||||||
services.mpd = {
|
|
||||||
enable = true;
|
|
||||||
musicDirectory = "/home/max/Music/";
|
|
||||||
};
|
|
||||||
|
|
||||||
services.mpdris2.enable = true;
|
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
}
|
}
|
||||||
|
24
modules/home-manager/git.nix
Normal file
24
modules/home-manager/git.nix
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
{...}: {
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
extraConfig = {
|
||||||
|
fetch.parallel = 0;
|
||||||
|
init.defaultBranch = "main";
|
||||||
|
pull.rebase = true;
|
||||||
|
};
|
||||||
|
delta = {
|
||||||
|
enable = true;
|
||||||
|
options = {
|
||||||
|
decorations = {
|
||||||
|
commit-decoration-style = "bold yellow box ul";
|
||||||
|
file-decoration-style = "none";
|
||||||
|
file-style = "bold yellow ul";
|
||||||
|
};
|
||||||
|
features = "decorations";
|
||||||
|
whitespace-error-style = "22 reverse";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
userEmail = "max.kaenner@gmail.com";
|
||||||
|
userName = "Max Känner";
|
||||||
|
};
|
||||||
|
}
|
12
modules/home-manager/lazygit.nix
Normal file
12
modules/home-manager/lazygit.nix
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{...}: {
|
||||||
|
programs.lazygit = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
gui = {
|
||||||
|
shwoRandomTip = false;
|
||||||
|
nerdFontsVersion = "3";
|
||||||
|
border = "rounded";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
17
modules/home-manager/mpd.nix
Normal file
17
modules/home-manager/mpd.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{pkgs, ...}: {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
mpc-cli
|
||||||
|
ymuse
|
||||||
|
];
|
||||||
|
services.mpd = {
|
||||||
|
enable = true;
|
||||||
|
musicDirectory = "/home/max/Music/";
|
||||||
|
network.startWhenNeeded = true;
|
||||||
|
extraConfig = ''
|
||||||
|
restore_paused = yes
|
||||||
|
auto_update = yes
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
services.mpd-mpris.enable = true;
|
||||||
|
services.mpdris2.enable = true;
|
||||||
|
}
|
@ -50,6 +50,7 @@ in {
|
|||||||
wdisplays # tool to configure displays
|
wdisplays # tool to configure displays
|
||||||
];
|
];
|
||||||
|
|
||||||
|
sound.enable = true;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
alsa.enable = true;
|
alsa.enable = true;
|
||||||
@ -58,6 +59,7 @@ in {
|
|||||||
jack.enable = true;
|
jack.enable = true;
|
||||||
wireplumber.enable = true;
|
wireplumber.enable = true;
|
||||||
};
|
};
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
# xdg-desktop-portal works by exposing a series of D-Bus interfaces
|
# xdg-desktop-portal works by exposing a series of D-Bus interfaces
|
||||||
# known as portals under a well-known name
|
# known as portals under a well-known name
|
||||||
|
Loading…
Reference in New Issue
Block a user