Merge remote-tracking branch 'origin/nixos' into nixos-work

This commit is contained in:
Moritz Böhme 2023-04-17 09:34:04 +02:00
commit 71b04e6e6a
15 changed files with 293 additions and 262 deletions

View file

@ -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";
};
}

View 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;
};
};
};
};
}

View 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
];
}

View file

@ -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;
}

View 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 ];
};
}

View file

@ -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
];

View file

@ -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)

View file

@ -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" },
},
})

View file

@ -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",
})

View file

@ -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