Compare commits
No commits in common. "573a8cc407c10c50d9eac2301f9a32dfbfc4add8" and "08b0fbcd0c63af6c96302b0740e816432acc0014" have entirely different histories.
573a8cc407
...
08b0fbcd0c
19 changed files with 350 additions and 477 deletions
37
flake.lock
37
flake.lock
|
@ -549,22 +549,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1726871744,
|
||||
"narHash": "sha256-V5LpfdHyQkUF7RfOaDPrZDP+oqz88lTJrMT1+stXNwo=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a1d92660c6b3b7c26fb883500a80ea9d33321be2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"locked": {
|
||||
"lastModified": 1729855863,
|
||||
|
@ -624,8 +608,7 @@
|
|||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"nur": "nur",
|
||||
"sops-nix": "sops-nix",
|
||||
"stylix": "stylix",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
"stylix": "stylix"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
|
@ -738,24 +721,6 @@
|
|||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729613947,
|
||||
"narHash": "sha256-XGOvuIPW1XRfPgHtGYXd5MAmJzZtOuwlfKDgxX5KT3s=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "aac86347fb5063960eccb19493e0cadcdb4205ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
86
flake.nix
86
flake.nix
|
@ -7,7 +7,6 @@
|
|||
nur.url = "github:nix-community/NUR";
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||
stylix.url = "github:pizzapim/stylix/release-24.05";
|
||||
treefmt-nix.url = "github:numtide/treefmt-nix";
|
||||
|
||||
nix-index-database = {
|
||||
url = "github:nix-community/nix-index-database";
|
||||
|
@ -47,33 +46,13 @@
|
|||
};
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
...
|
||||
} @ inputs: let
|
||||
supportedSystems = [
|
||||
"x86_64-linux"
|
||||
"i686-linux"
|
||||
"aarch64-linux"
|
||||
];
|
||||
forAllSystems' = nixpkgs.lib.genAttrs;
|
||||
forAllSystems = forAllSystems' supportedSystems;
|
||||
pkgsForSystem = system:
|
||||
import nixpkgs {
|
||||
inherit system;
|
||||
};
|
||||
|
||||
treefmtEval = forAllSystems (
|
||||
system: inputs.treefmt-nix.lib.evalModule (pkgsForSystem system) ./treefmt.nix
|
||||
);
|
||||
|
||||
mkNixosSystem = {
|
||||
extraModule,
|
||||
nixpkgs' ? nixpkgs,
|
||||
useDefaultConfiguration ? true,
|
||||
}:
|
||||
nixpkgs'.lib.nixosSystem rec {
|
||||
outputs =
|
||||
{ self
|
||||
, nixpkgs
|
||||
, ...
|
||||
}@inputs:
|
||||
let
|
||||
mkNixosSystem = {extraModule, nixpkgs' ? nixpkgs, useDefaultConfiguration ? true}: nixpkgs'.lib.nixosSystem rec {
|
||||
system = "x86_64-linux";
|
||||
|
||||
specialArgs = {
|
||||
|
@ -81,22 +60,14 @@
|
|||
flake = self;
|
||||
};
|
||||
|
||||
modules =
|
||||
[
|
||||
modules = [
|
||||
extraModule
|
||||
]
|
||||
++ nixpkgs'.lib.optional useDefaultConfiguration ./nixos;
|
||||
] ++ nixpkgs'.lib.optional useDefaultConfiguration ./nixos;
|
||||
};
|
||||
in {
|
||||
formatter = forAllSystems (system: (treefmtEval.${system}.config.build.wrapper));
|
||||
|
||||
in
|
||||
{
|
||||
nixosConfigurations = {
|
||||
x260 = mkNixosSystem {
|
||||
extraModule = {
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
x260 = mkNixosSystem { extraModule = ({ pkgs, lib, ... }: {
|
||||
imports = [ inputs.nixos-hardware.nixosModules.lenovo-thinkpad-x260 ];
|
||||
|
||||
config = {
|
||||
|
@ -116,21 +87,17 @@
|
|||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "rtsx_pci_sdmmc" ];
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
x201 = mkNixosSystem {
|
||||
extraModule = {
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
x201 = mkNixosSystem {extraModule = ({ pkgs, lib, ... }: {
|
||||
imports = [ inputs.disko.nixosModules.disko ];
|
||||
config = {
|
||||
networking.hostName = "x201";
|
||||
|
||||
boot.initrd.availableKernelModules = [ "ehci_pci" "ahci" "usb_storage" ];
|
||||
|
||||
|
||||
disko.devices = {
|
||||
disk = {
|
||||
sda = {
|
||||
|
@ -181,12 +148,12 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
sue-cosmic = mkNixosSystem {
|
||||
useDefaultConfiguration = false;
|
||||
extraModule = {...}: {
|
||||
extraModule = ({ ... }: {
|
||||
imports = [
|
||||
inputs.nixos-hardware.nixosModules.dell-xps-13-9310
|
||||
inputs.nixos-cosmic.nixosModules.default
|
||||
|
@ -215,12 +182,14 @@
|
|||
swapDevices = [{ device = "/dev/disk/by-uuid/96a43c35-0174-4e92-81f0-168a5f601f0b"; }];
|
||||
|
||||
fileSystems = {
|
||||
"/" = {
|
||||
"/" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/31638735-5cc4-4013-8037-17e30edcbb0a";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
"/boot" = {
|
||||
"/boot" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/560E-F8A2";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
|
@ -230,11 +199,10 @@
|
|||
boot.initrd.luks.devices."luks-8ffd3129-4908-4209-98c4-4eb68a35c494".device = "/dev/disk/by-uuid/8ffd3129-4908-4209-98c4-4eb68a35c494";
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "vmd" "nvme" "usb_storage" ];
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
sue = mkNixosSystem {
|
||||
extraModule = {...}: {
|
||||
sue = mkNixosSystem {extraModule = ({ ... }: {
|
||||
imports = [ inputs.nixos-hardware.nixosModules.dell-xps-13-9310 ];
|
||||
|
||||
config = {
|
||||
|
@ -242,12 +210,14 @@
|
|||
networking.hostName = "xps-9315";
|
||||
swapDevices = [{ device = "/dev/disk/by-uuid/96a43c35-0174-4e92-81f0-168a5f601f0b"; }];
|
||||
fileSystems = {
|
||||
"/" = {
|
||||
"/" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/31638735-5cc4-4013-8037-17e30edcbb0a";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
"/boot" = {
|
||||
"/boot" =
|
||||
{
|
||||
device = "/dev/disk/by-uuid/560E-F8A2";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
|
@ -267,7 +237,7 @@
|
|||
# platform = "ipu6ep";
|
||||
# };
|
||||
};
|
||||
};
|
||||
});
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,11 +1,4 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
inputs,
|
||||
flake,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, lib, config, inputs, flake, ... }: {
|
||||
imports = [
|
||||
./neovim
|
||||
./firefox
|
||||
|
@ -24,7 +17,8 @@
|
|||
mimeApps = {
|
||||
enable = true;
|
||||
|
||||
defaultApplications = let
|
||||
defaultApplications =
|
||||
let
|
||||
applications = {
|
||||
telegram = {
|
||||
mimeApp = "org.telegram.desktop.desktop";
|
||||
|
@ -77,11 +71,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
mimeTypesForApp = {
|
||||
mimeApp,
|
||||
mimeTypes,
|
||||
}:
|
||||
map
|
||||
mimeTypesForApp = { mimeApp, mimeTypes }: map
|
||||
(
|
||||
mimeType: { "${mimeType}" = mimeApp; }
|
||||
)
|
||||
|
@ -96,12 +86,10 @@
|
|||
homeDirectory = "/home/pim";
|
||||
stateVersion = "23.05";
|
||||
|
||||
packages =
|
||||
(with pkgs; [
|
||||
packages = (with pkgs; [
|
||||
jellyfin-media-player
|
||||
virt-manager
|
||||
])
|
||||
++ (with pkgs.unstable; [
|
||||
]) ++ (with pkgs.unstable; [
|
||||
attic-client
|
||||
dbeaver-bin
|
||||
devenv
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
pkgs: lib: let
|
||||
pkgs: lib:
|
||||
let
|
||||
rycee-addons = pkgs.nur.repos.rycee.firefox-addons;
|
||||
custom-addons = import ./custom-addons.nix pkgs lib;
|
||||
in
|
||||
|
|
|
@ -1,15 +1,8 @@
|
|||
pkgs: lib: let
|
||||
pkgs: lib:
|
||||
let
|
||||
# Stolen from: https://github.com/nix-community/nur-combined/blob/master/repos/rycee/pkgs/firefox-addons/default.nix
|
||||
buildFirefoxXpiAddon = lib.makeOverridable ({
|
||||
stdenv ? pkgs.stdenv,
|
||||
fetchurl ? pkgs.fetchurl,
|
||||
pname,
|
||||
version,
|
||||
addonId,
|
||||
url,
|
||||
sha256,
|
||||
meta,
|
||||
...
|
||||
buildFirefoxXpiAddon = lib.makeOverridable ({ stdenv ? pkgs.stdenv
|
||||
, fetchurl ? pkgs.fetchurl, pname, version, addonId, url, sha256, meta, ...
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
name = "${pname}-${version}";
|
||||
|
@ -32,11 +25,13 @@ in {
|
|||
pname = "http-version-indicator";
|
||||
version = "3.2.1";
|
||||
addonId = "spdyindicator@chengsun.github.com";
|
||||
url = "https://addons.mozilla.org/firefox/downloads/file/3767224/http2_indicator-3.2.1.xpi";
|
||||
url =
|
||||
"https://addons.mozilla.org/firefox/downloads/file/3767224/http2_indicator-3.2.1.xpi";
|
||||
sha256 = "be9518017334ce502a1da514542c2ca4f974217d0c8e6c7c31d518aba57c09a8";
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/bsiegel/http-version-indicator";
|
||||
description = "An indicator showing the HTTP version used to load the page in the address bar.";
|
||||
description =
|
||||
"An indicator showing the HTTP version used to load the page in the address bar.";
|
||||
mozPermissions = [ "<all_urls>" "tabs" "webNavigation" "webRequest" ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
@ -45,11 +40,13 @@ in {
|
|||
pname = "indicatetls";
|
||||
version = "0.3.0";
|
||||
addonId = "{252ee273-8c8d-4609-b54d-62ae345be0a1}";
|
||||
url = "https://addons.mozilla.org/firefox/downloads/file/3608595/indicatetls-0.3.0.xpi";
|
||||
url =
|
||||
"https://addons.mozilla.org/firefox/downloads/file/3608595/indicatetls-0.3.0.xpi";
|
||||
sha256 = "7a3b7edb1085f7b15d279c1013fac1d68f5247cfd6312d5275cb053e24a79465";
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/jannispinter/indicatetls";
|
||||
description = "Displays negotiated SSL/TLS protocol version and additional security information in the address bar";
|
||||
description =
|
||||
"Displays negotiated SSL/TLS protocol version and additional security information in the address bar";
|
||||
license = licenses.mpl20;
|
||||
mozPermissions = [
|
||||
"tabs"
|
||||
|
@ -66,11 +63,13 @@ in {
|
|||
pname = "sixindicator";
|
||||
version = "1.3.0";
|
||||
addonId = "{8c9cad02-c069-4e93-909d-d874da819c49}";
|
||||
url = "https://addons.mozilla.org/firefox/downloads/file/3493442/sixindicator-1.3.0.xpi";
|
||||
url =
|
||||
"https://addons.mozilla.org/firefox/downloads/file/3493442/sixindicator-1.3.0.xpi";
|
||||
sha256 = "415ab83ed4ac94d1efe114752a09df29536d1bd54cc9b7e5ce5d9ee55a84226d";
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/HostedDinner/SixIndicator";
|
||||
description = "Shows a simple icon, if IPv6 or IPv4 was used for the request of the site. When clicking on the icon, more information is shown, like the number of requests per domain and if these requests were made via IPv6 or IPv4.";
|
||||
description =
|
||||
"Shows a simple icon, if IPv6 or IPv4 was used for the request of the site. When clicking on the icon, more information is shown, like the number of requests per domain and if these requests were made via IPv6 or IPv4.";
|
||||
license = licenses.mit;
|
||||
mozPermissions = [ "tabs" "webRequest" "<all_urls>" ];
|
||||
platforms = platforms.all;
|
||||
|
@ -80,7 +79,8 @@ in {
|
|||
pname = "simple-style-fox-2";
|
||||
version = "10.0";
|
||||
addonId = "{317526c6-ff2b-49c9-822e-d77b4a3da1d1}";
|
||||
url = "https://addons.mozilla.org/firefox/downloads/file/3934220/simple_style_fox_2-10.0.xpi";
|
||||
url =
|
||||
"https://addons.mozilla.org/firefox/downloads/file/3934220/simple_style_fox_2-10.0.xpi";
|
||||
sha256 = "1aaac3ba08d21086d7087015f92a27661940df45a97bf5680588c883f799a97d";
|
||||
meta = with lib; {
|
||||
description = "Simple style fox 2";
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
firefoxAddons = import ./addons.nix pkgs lib;
|
||||
firefoxSettings = {
|
||||
"browser.aboutConfig.showWarning" = false;
|
||||
|
@ -17,7 +14,8 @@
|
|||
"browser.newtabpage.activity-stream.showSponsored" = false;
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||
};
|
||||
in {
|
||||
in
|
||||
{
|
||||
config = {
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
|
|
|
@ -1,10 +1,4 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
flake,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, lib, flake, config, ... }: {
|
||||
home.packages = with pkgs; [ gnome.gnome-tweaks ];
|
||||
|
||||
dconf.settings = with lib.hm.gvariant; {
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, lib, ... }: {
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
|
|
|
@ -1,12 +1,4 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
inputs,
|
||||
flake,
|
||||
system,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, config, lib, inputs, flake, system, ... }: {
|
||||
imports = [
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
./lanzaboote.nix
|
||||
|
@ -130,8 +122,7 @@
|
|||
hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
|
||||
config = {
|
||||
allowUnfreePredicate = pkg:
|
||||
builtins.elem (lib.getName pkg) [
|
||||
allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
|
||||
"libfprint-2-tod1-goodix"
|
||||
];
|
||||
};
|
||||
|
|
|
@ -2,25 +2,21 @@
|
|||
services.xserver.desktopManager.gnome.enable = true;
|
||||
|
||||
environment = {
|
||||
systemPackages =
|
||||
[
|
||||
systemPackages = [
|
||||
pkgs.gnome.gnome-shell-extensions
|
||||
]
|
||||
++ (with pkgs.gnomeExtensions; [
|
||||
] ++ (with pkgs.gnomeExtensions; [
|
||||
pop-shell
|
||||
window-is-ready-remover
|
||||
random-wallpaper
|
||||
workspaces-indicator-by-open-apps
|
||||
]);
|
||||
|
||||
gnome.excludePackages =
|
||||
(with pkgs; [
|
||||
gnome.excludePackages = (with pkgs; [
|
||||
epiphany
|
||||
gnome-connections
|
||||
gnome-console
|
||||
gnome-tour
|
||||
])
|
||||
++ (with pkgs.gnome; [
|
||||
]) ++ (with pkgs.gnome; [
|
||||
geary
|
||||
gnome-calendar
|
||||
gnome-clocks
|
||||
|
|
|
@ -1,9 +1,4 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
{ config, lib, inputs, ... }: {
|
||||
imports = [
|
||||
inputs.lanzaboote.nixosModules.lanzaboote
|
||||
];
|
||||
|
|
|
@ -1,9 +1,4 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
flake,
|
||||
...
|
||||
}: {
|
||||
{ inputs, pkgs, flake, ... }: {
|
||||
imports = [ inputs.sops-nix.nixosModules.sops ];
|
||||
|
||||
environment.systemPackages = with pkgs; [ sops ];
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
{ pkgs, inputs, ... }: {
|
||||
imports = [ inputs.stylix.nixosModules.stylix ];
|
||||
|
||||
stylix = {
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
{ lib, config, ... }: {
|
||||
networking = {
|
||||
useDHCP = lib.mkDefault true;
|
||||
networkmanager.unmanaged = [ "tailscale0" ];
|
||||
|
@ -14,14 +10,12 @@
|
|||
dns = [ "192.168.30.131" ];
|
||||
autostart = false;
|
||||
mtu = 1412;
|
||||
peers = [
|
||||
{
|
||||
peers = [{
|
||||
presharedKeyFile = config.sops.secrets."wireguard/home/presharedKey".path;
|
||||
endpoint = "wg.kun.is:51820";
|
||||
publicKey = "fa3mQ7ximJbH7cu2ZbWidto5xBGxEEfWvCCiUDk00Hg=";
|
||||
allowedIPs = [ "0.0.0.0/0" ];
|
||||
}
|
||||
];
|
||||
}];
|
||||
};
|
||||
|
||||
home-no-pihole = {
|
||||
|
@ -30,14 +24,12 @@
|
|||
dns = [ "192.168.10.1" ];
|
||||
autostart = false;
|
||||
mtu = 1412;
|
||||
peers = [
|
||||
{
|
||||
peers = [{
|
||||
presharedKeyFile = config.sops.secrets."wireguard/home/presharedKey".path;
|
||||
endpoint = "wg.kun.is:51820";
|
||||
publicKey = "fa3mQ7ximJbH7cu2ZbWidto5xBGxEEfWvCCiUDk00Hg=";
|
||||
allowedIPs = [ "0.0.0.0/0" ];
|
||||
}
|
||||
];
|
||||
}];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
{...}: {
|
||||
projectRootFile = "flake.nix";
|
||||
programs.alejandra.enable = true;
|
||||
}
|
Loading…
Reference in a new issue