Merge remote-tracking branch 'origin/nixos' into nixos-work
This commit is contained in:
commit
71b04e6e6a
15 changed files with 293 additions and 262 deletions
|
|
@ -5,135 +5,56 @@
|
|||
with lib; {
|
||||
my = {
|
||||
yubikey = {
|
||||
enable = true;
|
||||
enable = mkDefault true;
|
||||
luksSupport = {
|
||||
enable = true;
|
||||
devices = [ "enc" ];
|
||||
enable = mkDefault true;
|
||||
devices = mkDefault [ "enc" ];
|
||||
};
|
||||
};
|
||||
wallpapers.enable = true;
|
||||
wallpapers.enable = mkDefault true;
|
||||
theming = {
|
||||
enable = true;
|
||||
scheme = "catppuccin-macchiato";
|
||||
};
|
||||
virtualisation = {
|
||||
podman.enable = true;
|
||||
libvirtd.enable = true;
|
||||
enable = mkDefault true;
|
||||
scheme = mkDefault "catppuccin-macchiato";
|
||||
};
|
||||
virtualisation.podman.enable = mkDefault true;
|
||||
|
||||
programs = {
|
||||
adb.enable = true;
|
||||
hyprland.enable = true;
|
||||
code.enable = true;
|
||||
firefox = {
|
||||
enable = true;
|
||||
arkenfox = {
|
||||
enable = true;
|
||||
overrides = {
|
||||
## arkenfox overrides
|
||||
# automatic search
|
||||
"keyword.enabled" = true;
|
||||
"browser.search.suggest.enabled" = true;
|
||||
"browser.urlbar.suggest.searches" = true;
|
||||
|
||||
# startup page
|
||||
"browser.startup.homepage" = "https://searxng.moritzboeh.me/";
|
||||
"browser.startup.page" = 1;
|
||||
|
||||
# drm
|
||||
"media.eme.enabled" = true;
|
||||
|
||||
# sanitisation
|
||||
"privacy.clearOnShutdown.history" = false;
|
||||
|
||||
# disable letterboxing
|
||||
"privacy.resistFingerprinting.letterboxing" = false;
|
||||
|
||||
## OTHER
|
||||
# Dont show warning when accessing about:config
|
||||
"browser.aboutConfig.showWarning" = false;
|
||||
|
||||
# Hide bookmarks
|
||||
"browser.toolbars.bookmarks.visibility" = "never";
|
||||
|
||||
# Smooth scrolling
|
||||
"general.smoothScroll.lines.durationMaxMS" = 125;
|
||||
"general.smoothScroll.lines.durationMinMS" = 125;
|
||||
"general.smoothScroll.mouseWheel.durationMaxMS" = 200;
|
||||
"general.smoothScroll.mouseWheel.durationMinMS" = 100;
|
||||
"general.smoothScroll.msdPhysics.enabled" = true;
|
||||
"general.smoothScroll.other.durationMaxMS" = 125;
|
||||
"general.smoothScroll.other.durationMinMS" = 125;
|
||||
"general.smoothScroll.pages.durationMaxMS" = 125;
|
||||
"general.smoothScroll.pages.durationMinMS" = 125;
|
||||
"mousewheel.min_line_scroll_amount" = 40;
|
||||
"mousewheel.system_scroll_override_on_root_content.enabled" = true;
|
||||
"mousewheel.system_scroll_override_on_root_content.horizontal.factor" = 175;
|
||||
"mousewheel.system_scroll_override_on_root_content.vertical.factor" = 175;
|
||||
"toolkit.scrollbox.horizontalScrollDistance" = 6;
|
||||
"toolkit.scrollbox.verticalScrollDistance" = 2;
|
||||
};
|
||||
};
|
||||
};
|
||||
git.signing = true;
|
||||
gpg.enable = true;
|
||||
hub.enable = true;
|
||||
ledger.enable = true;
|
||||
logseq.enable = true;
|
||||
nvim.enable = true;
|
||||
python.versions."311".enable = true;
|
||||
ssh = {
|
||||
enable = true;
|
||||
includeSecrets = [ ../../secrets/ssh-home.age ];
|
||||
};
|
||||
spotify.enable = true;
|
||||
thunar.enable = true;
|
||||
zathura.enable = true;
|
||||
chromium.enable = mkDefault true;
|
||||
firefox.enable = mkDefault true;
|
||||
gpg.enable = mkDefault true;
|
||||
hyprland.enable = mkDefault true;
|
||||
logseq.enable = mkDefault true;
|
||||
nvim.enable = mkDefault true;
|
||||
python.versions."311".enable = mkDefault true;
|
||||
spotify.enable = mkDefault true;
|
||||
ssh.enable = mkDefault true;
|
||||
thunar.enable = mkDefault true;
|
||||
zathura.enable = mkDefault true;
|
||||
};
|
||||
services = {
|
||||
dunst.enable = true;
|
||||
kdeconnect.enable = true;
|
||||
mullvad.enable = true;
|
||||
openconnect.enable = true;
|
||||
printing.enable = true;
|
||||
dunst.enable = mkDefault true;
|
||||
gammastep.enable = true;
|
||||
kdeconnect.enable = mkDefault true;
|
||||
printing.enable = true;
|
||||
wireguard.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
# nix
|
||||
nixpkgs-review
|
||||
|
||||
# ripping
|
||||
abcde
|
||||
handbrake
|
||||
picard
|
||||
|
||||
# other
|
||||
anki
|
||||
calibre
|
||||
jellyfin-media-player
|
||||
keepassxc
|
||||
stable.libreoffice # HACK to fix build error
|
||||
nixpkgs-review
|
||||
pavucontrol
|
||||
stable.libreoffice # HACK to fix build error
|
||||
stable.signal-desktop
|
||||
tlaplusToolbox
|
||||
vlc
|
||||
thunderbird
|
||||
plantuml
|
||||
|
||||
jetbrains.pycharm-professional
|
||||
|
||||
synology-drive-client
|
||||
|
||||
texlive.combined.scheme-full
|
||||
thunderbird
|
||||
vlc
|
||||
];
|
||||
|
||||
programs = {
|
||||
chromium.enable = true;
|
||||
nix-ld.enable = true;
|
||||
};
|
||||
programs.nix-ld.enable = true;
|
||||
|
||||
home-manager.users.moritz = {
|
||||
services.nextcloud-client = {
|
||||
|
|
@ -148,7 +69,5 @@ with lib; {
|
|||
alsa.enable = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
# Remap capslock to esc and shift + capslock to capslock
|
||||
xserver.xkbOptions = "terminate:ctrl_alt_bksp,caps:escape_shifted_capslock";
|
||||
};
|
||||
}
|
||||
|
|
|
|||
60
modules/profiles/personal.nix
Normal file
60
modules/profiles/personal.nix
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
{ lib, ... }:
|
||||
|
||||
with lib;
|
||||
{
|
||||
my = {
|
||||
services.openconnect.enable = true;
|
||||
programs = {
|
||||
ssh.includeSecrets = mkDefault [ ../../secrets/ssh-home.age ];
|
||||
git.signing = mkDefault true;
|
||||
hub.enable = mkDefault true;
|
||||
firefox.arkenfox = {
|
||||
enable = mkDefault true;
|
||||
overrides = mkDefault {
|
||||
## arkenfox overrides
|
||||
# automatic search
|
||||
"keyword.enabled" = true;
|
||||
"browser.search.suggest.enabled" = true;
|
||||
"browser.urlbar.suggest.searches" = true;
|
||||
|
||||
# startup page
|
||||
"browser.startup.homepage" = "https://searxng.moritzboeh.me/";
|
||||
"browser.startup.page" = 1;
|
||||
|
||||
# drm
|
||||
"media.eme.enabled" = true;
|
||||
|
||||
# sanitisation
|
||||
"privacy.clearOnShutdown.history" = false;
|
||||
|
||||
# disable letterboxing
|
||||
"privacy.resistFingerprinting.letterboxing" = false;
|
||||
|
||||
## OTHER
|
||||
# Dont show warning when accessing about:config
|
||||
"browser.aboutConfig.showWarning" = false;
|
||||
|
||||
# Hide bookmarks
|
||||
"browser.toolbars.bookmarks.visibility" = "never";
|
||||
|
||||
# Smooth scrolling
|
||||
"general.smoothScroll.lines.durationMaxMS" = 125;
|
||||
"general.smoothScroll.lines.durationMinMS" = 125;
|
||||
"general.smoothScroll.mouseWheel.durationMaxMS" = 200;
|
||||
"general.smoothScroll.mouseWheel.durationMinMS" = 100;
|
||||
"general.smoothScroll.msdPhysics.enabled" = true;
|
||||
"general.smoothScroll.other.durationMaxMS" = 125;
|
||||
"general.smoothScroll.other.durationMinMS" = 125;
|
||||
"general.smoothScroll.pages.durationMaxMS" = 125;
|
||||
"general.smoothScroll.pages.durationMinMS" = 125;
|
||||
"mousewheel.min_line_scroll_amount" = 40;
|
||||
"mousewheel.system_scroll_override_on_root_content.enabled" = true;
|
||||
"mousewheel.system_scroll_override_on_root_content.horizontal.factor" = 175;
|
||||
"mousewheel.system_scroll_override_on_root_content.vertical.factor" = 175;
|
||||
"toolkit.scrollbox.horizontalScrollDistance" = 6;
|
||||
"toolkit.scrollbox.verticalScrollDistance" = 2;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
32
modules/profiles/ripping.nix
Normal file
32
modules/profiles/ripping.nix
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{ pkgs }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
# nix
|
||||
nixpkgs-review
|
||||
|
||||
# ripping
|
||||
abcde
|
||||
handbrake
|
||||
picard
|
||||
|
||||
# other
|
||||
anki
|
||||
calibre
|
||||
jellyfin-media-player
|
||||
keepassxc
|
||||
stable.libreoffice # HACK to fix build error
|
||||
pavucontrol
|
||||
stable.signal-desktop
|
||||
tlaplusToolbox
|
||||
vlc
|
||||
thunderbird
|
||||
plantuml
|
||||
|
||||
jetbrains.pycharm-professional
|
||||
|
||||
synology-drive-client
|
||||
|
||||
texlive.combined.scheme-full
|
||||
];
|
||||
}
|
||||
|
|
@ -1,96 +1,33 @@
|
|||
{ config
|
||||
, lib
|
||||
{ lib
|
||||
, pkgs
|
||||
, ...
|
||||
}:
|
||||
with lib; {
|
||||
my = {
|
||||
# config
|
||||
yubikey = {
|
||||
enable = true;
|
||||
luksSupport = {
|
||||
enable = true;
|
||||
devices = [ "enc" ];
|
||||
};
|
||||
};
|
||||
theming = {
|
||||
enable = true;
|
||||
scheme = "catppuccin-macchiato";
|
||||
};
|
||||
wallpapers.enable = true;
|
||||
|
||||
virtualisation = {
|
||||
podman.enable = true;
|
||||
libvirtd.enable = true;
|
||||
};
|
||||
|
||||
programs = {
|
||||
code.enable = true;
|
||||
firefox.enable = true;
|
||||
git.identity.email = "moritz.boehme@l.de";
|
||||
code.enable = mkDefault true;
|
||||
ssh.enable = mkForce false;
|
||||
git.identity.email = mkDefault "moritz.boehme@l.de";
|
||||
hyprland = {
|
||||
enable = true;
|
||||
blur = false;
|
||||
blur = mkDefault false;
|
||||
};
|
||||
miracast.enable = true;
|
||||
miracast.enable = mkDefault true;
|
||||
python.versions = {
|
||||
"38".enable = true;
|
||||
"310".enable = true;
|
||||
"311".enable = true;
|
||||
"38".enable = mkDefault true;
|
||||
"310".enable = mkDefault true;
|
||||
"311".enable = mkDefault true;
|
||||
};
|
||||
spotify.enable = true;
|
||||
thunar.enable = true;
|
||||
nvim.enable = true;
|
||||
zathura.enable = true;
|
||||
};
|
||||
|
||||
services = {
|
||||
kdeconnect.enable = true;
|
||||
printing.enable = true;
|
||||
gammastep.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
chromium
|
||||
fprintd
|
||||
gnumake
|
||||
insomnia
|
||||
jetbrains.pycharm-professional
|
||||
keepassxc
|
||||
stable.libreoffice
|
||||
logseq
|
||||
pavucontrol
|
||||
poetry
|
||||
slack
|
||||
vlc
|
||||
];
|
||||
|
||||
networking.networkmanager.enableStrongSwan = true;
|
||||
|
||||
home-manager.users.moritz = {
|
||||
services.unclutter.enable = true;
|
||||
services.nextcloud-client = {
|
||||
enable = true;
|
||||
startInBackground = true;
|
||||
};
|
||||
};
|
||||
services = {
|
||||
gnome.gnome-keyring.enable = true;
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
# Remap capslock to esc and shift + capslock to capslock
|
||||
xserver.xkbOptions = "terminate:ctrl_alt_bksp,caps:escape_shifted_capslock";
|
||||
fprintd = {
|
||||
enable = true;
|
||||
tod = {
|
||||
enable = true;
|
||||
driver = pkgs.libfprint-2-tod1-vfs0090;
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.nix-ld.enable = true;
|
||||
}
|
||||
|
|
|
|||
26
modules/programs/chromium.nix
Normal file
26
modules/programs/chromium.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, ...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.my.programs.chromium;
|
||||
in
|
||||
{
|
||||
options.my.programs.chromium = {
|
||||
enable = mkEnableOption "chromium";
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.stable.chromium;
|
||||
defaultText = "pkgs.chromium";
|
||||
description = "Chromium package to install.";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
programs.chromium.enable = true;
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
};
|
||||
}
|
||||
|
|
@ -2,6 +2,7 @@
|
|||
imports = [
|
||||
./adb.nix
|
||||
./bspwm
|
||||
./chromium.nix
|
||||
./code.nix
|
||||
./direnv.nix
|
||||
./firefox.nix
|
||||
|
|
@ -17,13 +18,13 @@
|
|||
./ledger
|
||||
./logseq.nix
|
||||
./miracast.nix
|
||||
./nvim
|
||||
./python.nix
|
||||
./rofi
|
||||
./spotify.nix
|
||||
./ssh.nix
|
||||
./sway.nix
|
||||
./thunar.nix
|
||||
./nvim
|
||||
./zathura.nix
|
||||
./zsh.nix
|
||||
];
|
||||
|
|
|
|||
|
|
@ -43,8 +43,8 @@ in
|
|||
general {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 5
|
||||
gaps_out = 5
|
||||
gaps_in = 3
|
||||
gaps_out = 3
|
||||
border_size = 2
|
||||
col.active_border = rgba(1affffee)
|
||||
col.inactive_border = rgba(595959aa)
|
||||
|
|
|
|||
|
|
@ -1,11 +1,15 @@
|
|||
vim.loader.enable()
|
||||
|
||||
-- Load custom treesitter grammar for org filetype
|
||||
require("orgmode").setup_ts_grammar()
|
||||
require("nvim-treesitter.configs").setup({
|
||||
sync_install = false,
|
||||
auto_install = false,
|
||||
highlight = {
|
||||
enable = true,
|
||||
additional_vim_regex_highlighting = false,
|
||||
-- Required for spellcheck, some LaTex highlights and
|
||||
-- code block highlights that do not have ts grammar
|
||||
additional_vim_regex_highlighting = { "org" },
|
||||
},
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -1,18 +1,4 @@
|
|||
local orgmode = require("orgmode")
|
||||
-- Load custom treesitter grammar for org filetype
|
||||
orgmode.setup_ts_grammar()
|
||||
-- Treesitter configuration
|
||||
require("nvim-treesitter.configs").setup({
|
||||
-- If TS highlights are not enabled at all, or disabled via `disable` prop,
|
||||
-- highlighting will fallback to default Vim syntax highlighting
|
||||
highlight = {
|
||||
enable = true,
|
||||
-- Required for spellcheck, some LaTex highlights and
|
||||
-- code block highlights that do not have ts grammar
|
||||
additional_vim_regex_highlighting = { "org" },
|
||||
},
|
||||
})
|
||||
orgmode.setup({
|
||||
require("orgmode").setup({
|
||||
org_agenda_files = { "~/Notes/org" },
|
||||
org_default_notes_file = "~/Notes/org/refile.org",
|
||||
})
|
||||
|
|
|
|||
|
|
@ -11,10 +11,10 @@
|
|||
|
||||
# tmpfs = /tmp is mounted in ram. Doing so makes temp file management speedy
|
||||
# on ssd systems, and volatile! Because it's wiped on reboot.
|
||||
boot.tmpOnTmpfs = lib.mkDefault true;
|
||||
boot.tmp.useTmpfs = lib.mkDefault true;
|
||||
# If not using tmpfs, which is naturally purged on reboot, we must clean it
|
||||
# /tmp ourselves. /tmp should be volatile storage!
|
||||
boot.cleanTmpDir = lib.mkDefault (!config.boot.tmpOnTmpfs);
|
||||
boot.tmp.cleanOnBoot = lib.mkDefault (!config.boot.tmpOnTmpfs);
|
||||
|
||||
# Fix a security hole in place for backwards compatibility. See desc in
|
||||
# nixpkgs/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue