b0VIM 9.1õYmfƒ´¸zomegaskribl~omega/nixos-config/flake.nixutf-8
3210#"! UtpAdPadäÓ˛ÿ◊´§Äg?Ônm^?Ê
É


Ó3
–kM4ôêèkP)⁄
≥
l

ô	^		øi1≈öu-ŸÅI˙»ï_›‘”nm;ﬂ¬ödOæ©®ê=˘ÓÌ∫ía          allowUnfree = true;        config = {        system = systemSettings.system;      pkgs-stable = import inputs.nixpkgs-stable {        };          src = inputs.nixpkgs;          name = "nixpkgs-patched";        (import inputs.nixpkgs { system = systemSettings.system; }).applyPatches {      nixpkgs-patched =                }));                  overlays = [ inputs.rust-overlay.overlays.default ] ++ (if systemSettings.genericLinux then [ inputs.nixgl.overlay ] else []);                  };                    allowUnfreePredicate = (_: true);                    allowUnfree = true;                  config = {                  system = systemSettings.system;                (import nixpkgs-patched {      pkgs = (if stablePkgs then pkgs-stable else      stablePkgs = ((systemSettings.profile == "homelab") || (systemSettings.profile == "worklab"));      };                           editor);                         else                               "exec " + term + " -e " + editor                             (editor == "nano")) then                             (editor == "nvim") ||                        (if ((editor == "vim") ||                      else                        "emacsclient -c -a 'emacs'"        spawnEditor = if (editor == "emacsclient") then        # I set the session variable SPAWNEDITOR to this in my home.nix for convenience        # EDITOR and TERM session variables must be set in home.nix or other module    # generates a command that can be used to spawn editor inside a gui        # editor spawning translator        editor = "nvim"; # Default editor;        fontPkg = pkgs.jetbrains-mono; # Console font package        font = "JetBrainsMono"; # select font        term = "alacritty"; # Default terminal command;        defaultRoamDir = "Personal.p"; # Default org roam directory relative to ~/Org        browser = "qutebrowser"; # Default browser; must select one from ./user/app/browser/        wmType = if (wm == "hyprland") then "wayland" else "x11";        # window manager type (hyprland or x11) translator        wm = "dwm"; # Selected window manager or desktop environment; must select one in both ./user/wm/ and ./system/wm/        theme = "catppuccin-mocha"; # selcted theme from my themes directory (./themes/)        dotfilesDir = "~/.dotfiles"; # absolute path of the local repo        homeDir = "/home/${username}";        devEmail = "georgiy.shevoroshkin@inteco.ch";         devName = "gs2";        username = "omega"; # username      userSettings = rec {      # ----- USER SETTINGS ----- #      };        authorizedSshKeys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINBVYpXJvGwWCWy+sv+LQAERdI9pUfC+iTIag1gsQgx2 omega@archie" ];        paranoid = false;        hardened = true;        genericLinux = false;        grubDevice = "/dev/sda"; # device identifier for grub; only used for legacy (bios) boot mode        bootMountPath = "/boot        # default        genericLinux = false;        grubDevice = "/dev/sda"; # device identifier for grub; only used for legacy (bios) boot mode        bootMountPath = "/boot"; # mount path for efi boot partition; only used for uefi boot mode        bootMode = "bios"; # uefi or bios        system = "x86_64-linux"; # system arch        extraGrubEntries = "";        # host        authorizedSshKeys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINBVYpXJvGwWCWy+sv+LQAERdI9pUfC+iTIag1gsQgx2 omega@archie" ];        profile = "work"; # select a profile defined from my profiles directory        hostname = "skribl"; # hostname      systemSettings = {      # ---- SYSTEM SETTINGS ---- #  let   outputs = { self, nixpkgs, ... }@inputs:   description = "Nixos config flake";{adYd‘…¿ø©d/€⁄â]ı
Ù
–
Ü
Ö
F


œyv?¶•úD,∆
ù
ê
q
B
!
˝	€	ø	ö	ç	Ç	y	[	8		’øiÍªövT8˚ÚÎÍ›±Åc+˙ﬁüngÎΩëä|+ˇ¯„•êâa+˝Ë§zsd9}  };    };      inputs.nixpkgs.follows = "nixpkgs";      url = "github:nix-community/nixvim";    nixvim = {    };      inputs.nixpkgs.follows = "nixpkgs";      url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";		firefox-addons = {    nixgl.url = "github:nix-community/nixGL";    rust-overlay.url = "github:oxalica/rust-overlay";    stylix.url = "github:danth/stylix";    };      flake = false;      url = "github:librephoenix/nix-straight.el/pgtk-patch";    nix-straight = {    };      inputs.hyprland.follows = "hyprland";      url = "github:DreamMaoMao/hycov/115cba558d439cc25d62ce38b7c62cde83f50ef5";    hycov = {    };      inputs.hyprland.follows = "hyprland";      url = "github:hyprwm/hyprland-plugins";    hyprland-plugins = {    hyprland.url = "github:hyprwm/Hyprland/cba1ade848feac44b2eda677503900639581c3f4?submodules=1";    };      inputs.nixpkgs.follows = "nixpkgs-stable";      url = "github:nix-community/home-manager/release-23.11";    home-manager-stable = {    };      inputs.nixpkgs.follows = "nixpkgs";      url = "github:nix-community/home-manager/master";    home-manager-unstable = {    nixpkgs-stable.url = "nixpkgs/nixos-23.11";    nixpkgs.url = "nixpkgs/nixos-unstable";  inputs = {    };      };        };          };            inherit bashScriptToNix;            inherit inputs;            inherit userSettings;            inherit systemSettings;            inherit pkgs-stable;            # pass config variables from above          specialArgs = {          ];            (./. + "/profiles" + ("/" + systemSettings.profile) + "/configuration.nix")            (./. + "/hosts" + ("/" + systemSettings.hostname) + "/configuration.nix")          modules = [          # load configuration.nix from selected PROFILE          system = systemSettings.system;        system = lib.nixosSystem {      nixosConfigurations = {      };        };          };            inherit bashScriptToNix;            inherit inputs;            inherit userSettings;            inherit systemSettings;            inherit pkgs-stable;            # pass config variables from above          extraSpecialArgs = {          ];            ./profiles/default/home.nix             (./. + "/profiles" + ("/" + systemSettings.profile) + "/home.nix")           modules = [          inherit pkgs;        user = home-manager.lib.homeManagerConfiguration {      homeConfigurations = {    in {      bashScriptToNix = n: p: (pkgs.writeShellScript n (builtins.replaceStrings [ "#!/bin/bash" ] [ "#!${pkgs.bash}/bin/bash" ] (builtins.readFile p)));      # hacky hack hack for badly written bash scripts        nixpkgsFor = forAllSystems (system: import inputs.nixpkgs { inherit system; });      # Attribute set of nixpkgs for each system:      forAllSystems = inputs.nixpkgs.lib.genAttrs supportedSystems;      # Function to generate a set based on supported systems:      supportedSystems = [ "aarch64-linux" "i686-linux" "x86_64-linux" ];      # Systems that can run tests:      home-manager = (if stablePkgs then inputs.home-manager-stable else inputs.home-manager-unstable);      # otherwise use home-manager-unstable      # use home-manager-stable if running a server (homelab or worklab profile)      lib = (if stablePkgs then inputs.nixpkgs-stable.lib else inputs.nixpkgs.lib);      # otherwise use patched nixos-unstable nixpkgs      # use nixpkgs if running a server (homelab or worklab profile)      # configure lib      };        };          allowUnfreePredicate = (_: true);ad0A ö^ÕªîzqpL1
„
—
∏
Ç
;
‚h-Îé8“
î
i
D
¸	®	P		‰…ód.Ó–¨£¢=<
‡Æëi3çxw_Ë»ΩºâaN0^˚—          allowUnfree = true;        conf          allowUnfree = true;        config = {        system = systemSettings.system;      pkgs          allowUnfree = true;        config = {        system = systemSettings.system;      pkgs-s          a           allowUnfree = true;        config = {        system = systemSettings.system;      pk          allowUnfree = true;        config = {        system = systemSettings.system;      pkgs-stable = import inputs.nixpkgs-stable {        };          src = inputs.nixpkgs;          name = "nixpkgs-patched";        (import inputs.nixpkgs { system = systemSettings.system; }).applyPatches {      nixpkgs-patched =                }));                  overlays = [ inputs.rust-overlay.overlays.default ] ++ (if systemSettings.genericLinux then [ inputs.nixgl.overlay ] else []);                  };                    allowUnfreePredicate = (_: true);                    allowUnfree = true;                  config = {                  system = systemSettings.system;                (import nixpkgs-patched {      pkgs = (if stablePkgs then pkgs-stable else      stablePkgs = ((systemSettings.profile == "homelab") || (systemSettings.profile == "worklab"));      };                           editor);                         else                               "exec " + term + " -e " + editor                             (editor == "nano")) then                             (editor == "nvim") ||                        (if ((editor == "vim") ||                      else                        "emacsclient -c -a 'emacs'"        spawnEditor = if (editor == "emacsclient") then        # I set the session variable SPAWNEDITOR to this in my home.nix for convenience        # EDITOR and TERM session variables must be set in home.nix or other module    # generates a command that can be used to spawn editor inside a gui        # editor spawning translator        editor = "nvim"; # Default editor;        fontPkg = pkgs.jetbrains-mono; # Console font package        font = "JetBrainsMono"; # select font        term = "alacritty"; # Default terminal command;        defaultRoamDir = "Personal.p"; # Default org roam directory relative to ~/Org        browser = "qutebrowser"; # Default browser; must select one from ./user/app/browser/        wmType = if (wm == "hyprland") then "wayland" else "x11";        # window manager type (hyprland or x11) translator        wm = "dwm"; # Selected window manager or desktop environment; must select one in both ./user/wm/ and ./system/wm/        theme = "catppuccin-mocha"; # selcted theme from my themes directory (./themes/)        dotfilesDir = "~/.dotfiles"; # absolute path of the local repo        devEmail = "georgiy.shevoroshkin@inteco.ch";         devName = "gs2";        # profile        homeDir = "/home/${username}";        username = "omega"; # username      userSettings = rec {      # ----- USER SETTINGS ----- #      };        paranoid = false;        hardened = lib.mkDefault true;        # profile        fontPkg = pkgs.tamzen; # Console font package        font = "${pkgs.tamzen}/share/consolefonts/Tamzen8x16.psf"; # Selected console font        kbLayout = "de_CH-latin1"; # select keyboard layout        locale = "en_US.UTF-8"; # select locale        timezone = "Europe/Zurich"; # select timezone