home

My NixOS systems configurations.
Log | Files | Refs | LICENSE

default.nix (1562B)


      1 { config, lib, pkgs, nixosConfig, ... }:
      2 
      3 let
      4   inherit (lib) optionals;
      5 in
      6 {
      7   imports = [
      8     ./audio.nix
      9     ./finances.nix
     10     ./firefox.nix
     11     ./gtk.nix
     12     ./keyboard.nix
     13     ./mpv.nix
     14     ./passwordstore.nix
     15     ./spotify.nix
     16   ]
     17   ++ optionals nixosConfig.modules.desktop.xorg.enable [ ./xorg.nix ]
     18   ++ optionals nixosConfig.modules.desktop.wayland.enable [ ./wayland.nix ]
     19   ++ optionals nixosConfig.modules.desktop.wayland.sway.enable [ ./sway.nix ];
     20 
     21   home.sessionVariables = {
     22     WEBKIT_DISABLE_COMPOSITING_MODE = 1;
     23   };
     24   home.packages = with pkgs; [
     25     aspell
     26     aspellDicts.en
     27     aspellDicts.fr
     28     desktop-file-utils
     29     hunspell
     30     hunspellDicts.en_GB-ize
     31     hunspellDicts.en_US-large
     32     hunspellDicts.fr-any
     33     keybase
     34     mpw
     35     my.batzconverter
     36     # nyxt
     37     obs-studio
     38     playerctl
     39     trash-cli
     40     xdg-user-dirs
     41     xdg-utils
     42     xsel
     43     yt-dlp # youtube-dl
     44   ];
     45 
     46   xdg.portal = {
     47     enable = true;
     48     xdgOpenUsePortal = true;
     49     extraPortals = with pkgs; [
     50       xdg-desktop-portal-hyprland
     51       xdg-desktop-portal-gtk
     52     ];
     53     config = {
     54       common = {
     55 	default = [
     56 	  "gtk"
     57 	];
     58       };
     59     };
     60   };
     61 
     62   home.file.".XCompose".source = ./xorg/XCompose;
     63   xdg.configFile."xorg/emoji.compose".source = ./xorg/emoji.compose;
     64   xdg.configFile."xorg/parens.compose".source = ./xorg/parens.compose;
     65   xdg.configFile."xorg/modletters.compose".source = ./xorg/modletters.compose;
     66   home.file.".oath" = {
     67     source = config.lib.file.mkOutOfStoreSymlink "/home/vincent/desktop/documents/.oath";
     68     recursive = true;
     69   };
     70 }