Restructure flake.nix and add JHelioviewer package
This commit is contained in:
55
flake.lock
generated
55
flake.lock
generated
@@ -1,17 +1,5 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"currentSystem": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1717805060,
|
|
||||||
"narHash": "sha256-jgZROz6KZg2bOy4PGGd/vzpmn7v22+C+2Ivwfk26OXo=",
|
|
||||||
"path": "/etc/nixos/hostname",
|
|
||||||
"type": "path"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"path": "/etc/nixos/hostname",
|
|
||||||
"type": "path"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
@@ -37,11 +25,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718530513,
|
"lastModified": 1720042825,
|
||||||
"narHash": "sha256-BmO8d0r+BVlwWtMLQEYnwmngqdXIuyFzMwvmTcLMee8=",
|
"narHash": "sha256-A0vrUB6x82/jvf17qPCpxaM+ulJnD8YZwH9Ci0BsAzE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "a1fddf0967c33754271761d91a3d921772b30d0e",
|
"rev": "e1391fb22e18a36f57e6999c7a9f966dc80ac073",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -58,11 +46,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719180626,
|
"lastModified": 1720045378,
|
||||||
"narHash": "sha256-vZAzm5KQpR6RGple1dzmSJw5kPivES2heCFM+ZWkt0I=",
|
"narHash": "sha256-lmE7B+QXw7lWdBu5GQlUABSpzPk3YBb9VbV+IYK5djk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "6b1f90a8ff92e81638ae6eb48cd62349c3e387bb",
|
"rev": "0a30138c694ab3b048ac300794c2eb599dc40266",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -73,11 +61,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718983919,
|
"lastModified": 1719468428,
|
||||||
"narHash": "sha256-+1xgeIow4gJeiwo4ETvMRvWoircnvb0JOt7NS9kUhoM=",
|
"narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "90338afd6177fc683a04d934199d693708c85a3b",
|
"rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -89,11 +77,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718835956,
|
"lastModified": 1719956923,
|
||||||
"narHash": "sha256-wM9v2yIxClRYsGHut5vHICZTK7xdrUGfrLkXvSuv6s4=",
|
"narHash": "sha256-nNJHJ9kfPdzYsCOlHOnbiiyKjZUW5sWbwx3cakg3/C4=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "dd457de7e08c6d06789b1f5b88fc9327f4d96309",
|
"rev": "706eef542dec88cc0ed25b9075d3037564b2d164",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -105,11 +93,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-stable_2": {
|
"nixpkgs-stable_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719099622,
|
"lastModified": 1719663039,
|
||||||
"narHash": "sha256-YzJECAxFt+U5LPYf/pCwW/e1iUd2PF21WITHY9B/BAs=",
|
"narHash": "sha256-tXlrgAQygNIy49LDVFuPXlWD2zTQV9/F8pfoqwwPJyo=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5e8e3b89adbd0be63192f6e645e0a54080004924",
|
"rev": "4a1e673523344f6ccc84b37f4413ad74ea19a119",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -121,11 +109,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719075281,
|
"lastModified": 1719848872,
|
||||||
"narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=",
|
"narHash": "sha256-H3+EC5cYuq+gQW8y0lSrrDZfH71LB4DAf+TDFyvwCNA=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a71e967ef3694799d0c418c98332f7ff4cc5f6af",
|
"rev": "00d80d13810dbfea8ab4ed1009b09100cca86ba8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -137,7 +125,6 @@
|
|||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"currentSystem": "currentSystem",
|
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"home-manager-stable": "home-manager-stable",
|
"home-manager-stable": "home-manager-stable",
|
||||||
"home-manager-unstable": "home-manager-unstable",
|
"home-manager-unstable": "home-manager-unstable",
|
||||||
@@ -152,11 +139,11 @@
|
|||||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1719111739,
|
"lastModified": 1719873517,
|
||||||
"narHash": "sha256-kr2QzRrplzlCP87ddayCZQS+dhGW98kw2zy7+jUXtF4=",
|
"narHash": "sha256-D1dxZmXf6M2h5lNE1m6orojuUawVPjogbGRsqSBX+1g=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "5e2e9421e9ed2b918be0a441c4535cfa45e04811",
|
"rev": "a11224af8d824935f363928074b4717ca2e280db",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
391
flake.nix
391
flake.nix
@@ -2,8 +2,6 @@
|
|||||||
description = "NixOS configuration";
|
description = "NixOS configuration";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
currentSystem.url = "path:/etc/nixos/hostname";
|
|
||||||
|
|
||||||
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05";
|
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||||
|
|
||||||
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
@@ -21,7 +19,6 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ self
|
outputs = inputs@{ self
|
||||||
, currentSystem
|
|
||||||
, nixpkgs-stable
|
, nixpkgs-stable
|
||||||
, nixpkgs-unstable
|
, nixpkgs-unstable
|
||||||
, home-manager-stable
|
, home-manager-stable
|
||||||
@@ -29,207 +26,211 @@
|
|||||||
, flake-utils
|
, flake-utils
|
||||||
, sops-nix
|
, sops-nix
|
||||||
, ...
|
, ...
|
||||||
}: let
|
}:
|
||||||
inherit (self) outputs;
|
let
|
||||||
inherit (currentSystem) hostname;
|
inherit (self) outputs;
|
||||||
|
lib = nixpkgs-stable.lib;
|
||||||
|
|
||||||
overlays = import ./overlays { inherit inputs; };
|
overlays = import ./overlays { inherit inputs; };
|
||||||
utils = import ./utils;
|
utils = import ./utils;
|
||||||
|
|
||||||
configs."ankaa" = {
|
configs = [
|
||||||
system = "x86_64-linux";
|
{
|
||||||
common.nixpkgs = "unstable";
|
hostname = "ankaa";
|
||||||
|
system = "x86_64-linux";
|
||||||
openssh = {
|
nixpkgs = nixpkgs-unstable;
|
||||||
enable = true;
|
home-manager = home-manager-unstable;
|
||||||
port = 2222;
|
|
||||||
};
|
options = {
|
||||||
|
openssh = {
|
||||||
|
enable = true;
|
||||||
|
port = 2222;
|
||||||
|
};
|
||||||
|
|
||||||
backup = {
|
backup = {
|
||||||
enable = true;
|
enable = true;
|
||||||
user = "eesim";
|
user = "eesim";
|
||||||
paths = [ "/home/eesim" ];
|
paths = [ "/home/eesim" ];
|
||||||
repo = "rf030789@rf030789.repo.borgbase.com:repo";
|
repo = "rf030789@rf030789.repo.borgbase.com:repo";
|
||||||
excludes = [
|
excludes = [
|
||||||
"/home/eesim/.local/share/Steam/steamapps/common"
|
"/home/eesim/.local/share/Steam/steamapps/common"
|
||||||
"/home/eesim/.cache"
|
"/home/eesim/.cache"
|
||||||
];
|
];
|
||||||
passphrase = "/home/eesim/.ssh/borgbase_passphrase";
|
passphrase = "/home/eesim/.ssh/borgbase_passphrase";
|
||||||
key = "/home/eesim/.ssh/id_ed25519_borgbase";
|
key = "/home/eesim/.ssh/id_ed25519_borgbase";
|
||||||
repeat = "daily";
|
repeat = "daily";
|
||||||
};
|
};
|
||||||
|
|
||||||
audio = {
|
audio = {
|
||||||
pipewire.enable = true;
|
pipewire.enable = true;
|
||||||
music.enable = true;
|
music.enable = true;
|
||||||
tools = {
|
tools = {
|
||||||
helvum = true;
|
helvum = true;
|
||||||
easyeffects = true;
|
easyeffects = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
gui = {
|
gui = {
|
||||||
enable = true;
|
enable = true;
|
||||||
protonmail = true;
|
protonmail = true;
|
||||||
matrix = true;
|
matrix = true;
|
||||||
gtk = false;
|
gtk = false;
|
||||||
|
|
||||||
sway = {
|
sway = {
|
||||||
enable = true;
|
enable = true;
|
||||||
desktop = true;
|
desktop = true;
|
||||||
};
|
|
||||||
|
|
||||||
monitors = pkgs.lib.mkMerge [
|
|
||||||
(utils.mkMonitor {
|
|
||||||
monitor = "DP-2";
|
|
||||||
resolution = "3440x1440";
|
|
||||||
refreshRate = 144;
|
|
||||||
x = 1920;
|
|
||||||
wallpaper = "ship_moon.png";
|
|
||||||
})
|
|
||||||
(utils.mkMonitor {
|
|
||||||
monitor = "HDMI-A-1";
|
|
||||||
resolution = "1920x1080";
|
|
||||||
refreshRate = 75;
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
games = {
|
|
||||||
enable = true;
|
|
||||||
lutris.enable = true;
|
|
||||||
minecraft.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
common.nil.enable = true;
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
wireguard.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
configs."alpheratz" = {
|
|
||||||
system = "x86_64-linux";
|
|
||||||
common.nixpkgs = "unstable";
|
|
||||||
|
|
||||||
laptop = {
|
|
||||||
powersave.enable = true;
|
|
||||||
backlight.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
audio = {
|
|
||||||
pipewire.enable = true;
|
|
||||||
music.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
gui = {
|
|
||||||
enable = true;
|
|
||||||
protonmail = true;
|
|
||||||
matrix = true;
|
|
||||||
|
|
||||||
sway = {
|
|
||||||
enable = true;
|
|
||||||
desktop = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
monitors = utils.mkMonitor {
|
|
||||||
monitor = "eDP-1";
|
|
||||||
resolution = "1920x1200";
|
|
||||||
refreshRate = 60;
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
common.nil.enable = true;
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
wireguard.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
configs."diphda" = {
|
|
||||||
system = "x86_64-linux";
|
|
||||||
common.nixpkgs = "stable";
|
|
||||||
|
|
||||||
openssh.enable = true;
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
firewall = {
|
|
||||||
allowedTCPPorts = [ 80 443 4533 7878 8096 8089 8902 8989 9000 9696 11112 24454 25565 25600 ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
currentConfig = configs."${hostname}";
|
|
||||||
system = currentConfig.system;
|
|
||||||
|
|
||||||
nixpkgs = if currentConfig.common.nixpkgs == "unstable" then
|
|
||||||
nixpkgs-unstable
|
|
||||||
else
|
|
||||||
nixpkgs-stable;
|
|
||||||
|
|
||||||
home-manager = if currentConfig.common.nixpkgs == "unstable" then
|
|
||||||
home-manager-unstable
|
|
||||||
else
|
|
||||||
home-manager-stable;
|
|
||||||
|
|
||||||
pkgs = import nixpkgs {
|
|
||||||
inherit system;
|
|
||||||
overlays = with overlays; [ gamescope ];
|
|
||||||
config.allowUnfree = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
systemConfig = if builtins.pathExists (./. + "/hosts/${hostname}/system.nix") then
|
|
||||||
(./. + "/hosts/${hostname}/system.nix")
|
|
||||||
else
|
|
||||||
./hosts/default/system.nix;
|
|
||||||
|
|
||||||
homeConfig = if builtins.pathExists (./. + "/hosts/${hostname}/home.nix") then
|
|
||||||
(./. + "/hosts/${hostname}/home.nix")
|
|
||||||
else
|
|
||||||
./hosts/default/home.nix;
|
|
||||||
|
|
||||||
in {
|
|
||||||
nixosConfigurations = {
|
|
||||||
"${hostname}" = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = {
|
|
||||||
inherit (outputs) localPackages;
|
|
||||||
inherit pkgs;
|
|
||||||
};
|
|
||||||
modules = [
|
|
||||||
{
|
|
||||||
networking.hostName = hostname;
|
|
||||||
simmer = currentConfig;
|
|
||||||
}
|
|
||||||
systemConfig
|
|
||||||
(./. + "/hosts/${hostname}/hardware-configuration.nix")
|
|
||||||
sops-nix.nixosModules.sops
|
|
||||||
(import ./modules/nix)
|
|
||||||
(import ./modules/options)
|
|
||||||
home-manager.nixosModules.home-manager
|
|
||||||
{
|
|
||||||
home-manager.useGlobalPkgs = true;
|
|
||||||
home-manager.useUserPackages = true;
|
|
||||||
home-manager.extraSpecialArgs = {
|
|
||||||
inherit utils;
|
|
||||||
systemConfig = configs."${hostname}";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.eesim = import homeConfig;
|
monitors = lib.mkMerge [
|
||||||
}
|
(utils.mkMonitor {
|
||||||
];
|
monitor = "DP-2";
|
||||||
};
|
resolution = "3440x1440";
|
||||||
};
|
refreshRate = 144;
|
||||||
localPackages = pkgs.lib.genAttrs flake-utils.lib.defaultSystems (system:
|
x = 1920;
|
||||||
{
|
wallpaper = "ship_moon.png";
|
||||||
kickoff-dot-desktop = pkgs.callPackage ./pkgs/kickoff-dot-desktop.nix {};
|
})
|
||||||
gamescope-old = pkgs.callPackage ./pkgs/gamescope-old {};
|
(utils.mkMonitor {
|
||||||
gamescope-dbg = pkgs.callPackage ./pkgs/gamescope-dbg {};
|
monitor = "HDMI-A-1";
|
||||||
|
resolution = "1920x1080";
|
||||||
|
refreshRate = 75;
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
games = {
|
||||||
|
enable = true;
|
||||||
|
lutris.enable = true;
|
||||||
|
minecraft.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
common.nil.enable = true;
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
wireguard.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
hostname = "alpheratz";
|
||||||
|
system = "x86_64-linux";
|
||||||
|
nixpkgs = nixpkgs-unstable;
|
||||||
|
home-manager = home-manager-unstable;
|
||||||
|
|
||||||
|
options = {
|
||||||
|
laptop = {
|
||||||
|
powersave.enable = true;
|
||||||
|
backlight.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
audio = {
|
||||||
|
pipewire.enable = true;
|
||||||
|
music.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
gui = {
|
||||||
|
enable = true;
|
||||||
|
protonmail = true;
|
||||||
|
matrix = true;
|
||||||
|
|
||||||
|
sway = {
|
||||||
|
enable = true;
|
||||||
|
desktop = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
monitors = utils.mkMonitor {
|
||||||
|
monitor = "eDP-1";
|
||||||
|
resolution = "1920x1200";
|
||||||
|
refreshRate = 60;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
common.nil.enable = true;
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
wireguard.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
hostname = "diphda";
|
||||||
|
system = "x86_64-linux";
|
||||||
|
nixpkgs = nixpkgs-stable;
|
||||||
|
home-manager = home-manager-stable;
|
||||||
|
|
||||||
|
options = {
|
||||||
|
openssh.enable = true;
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
firewall = {
|
||||||
|
allowedTCPPorts = [ 80 443 4533 7878 8096 8089 8902 8989 9000 9696 11112 24454 25565 25600 ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
in {
|
||||||
|
nixosConfigurations = builtins.listToAttrs (map (config:
|
||||||
|
let
|
||||||
|
inherit (config) nixpkgs home-manager system hostname;
|
||||||
|
|
||||||
|
pkgs = import nixpkgs {
|
||||||
|
inherit system;
|
||||||
|
overlays = with overlays; [ gamescope ];
|
||||||
|
};
|
||||||
|
|
||||||
|
localPackages = pkgs.lib.genAttrs flake-utils.lib.defaultSystems (system: {
|
||||||
|
kickoff-dot-desktop = pkgs.callPackage ./pkgs/kickoff-dot-desktop.nix {};
|
||||||
|
gamescope-old = pkgs.callPackage ./pkgs/gamescope-old {};
|
||||||
|
gamescope-dbg = pkgs.callPackage ./pkgs/gamescope-dbg {};
|
||||||
|
jhelioviewer = pkgs.callPackage ./pkgs/jhelioviewer.nix {};
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
systemConfig = if builtins.pathExists (./. + "/hosts/${hostname}/system.nix") then
|
||||||
|
(./. + "/hosts/${hostname}/system.nix")
|
||||||
|
else
|
||||||
|
./hosts/default/system.nix;
|
||||||
|
|
||||||
|
homeConfig = if builtins.pathExists (./. + "/hosts/${hostname}/home.nix") then
|
||||||
|
(./. + "/hosts/${hostname}/home.nix")
|
||||||
|
else
|
||||||
|
./hosts/default/home.nix;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
name = config.hostname;
|
||||||
|
value = nixpkgs.lib.nixosSystem {
|
||||||
|
specialArgs = {
|
||||||
|
inherit localPackages;
|
||||||
|
inherit pkgs;
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
{
|
||||||
|
networking.hostName = hostname;
|
||||||
|
simmer = config.options;
|
||||||
|
}
|
||||||
|
systemConfig
|
||||||
|
(./. + "/hosts/${hostname}/hardware-configuration.nix")
|
||||||
|
sops-nix.nixosModules.sops
|
||||||
|
(import ./modules/nix)
|
||||||
|
(import ./modules/options)
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.extraSpecialArgs = {
|
||||||
|
inherit utils;
|
||||||
|
systemConfig = config.options;
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.eesim = import homeConfig;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
})
|
||||||
|
configs
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
lib,
|
lib,
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
localPackages,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
|
|
||||||
@@ -30,6 +31,8 @@
|
|||||||
secrets."wireguard/preshared" = {};
|
secrets."wireguard/preshared" = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = [ localPackages.x86_64-linux.jhelioviewer ];
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.systemd-boot.xbootldrMountPoint = "/boot";
|
boot.loader.systemd-boot.xbootldrMountPoint = "/boot";
|
||||||
@@ -51,7 +54,7 @@
|
|||||||
listenPort = 51820;
|
listenPort = 51820;
|
||||||
privateKeyFile = "/run/secrets/wireguard/private";
|
privateKeyFile = "/run/secrets/wireguard/private";
|
||||||
dns = [ "192.168.1.1" ];
|
dns = [ "192.168.1.1" ];
|
||||||
autostart = false;
|
autostart = true;
|
||||||
|
|
||||||
peers = [
|
peers = [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -16,11 +16,30 @@ in
|
|||||||
services.swayidle = {
|
services.swayidle = {
|
||||||
enable = true;
|
enable = true;
|
||||||
timeouts = [
|
timeouts = [
|
||||||
{
|
(mkIf gui.sway.desktop {
|
||||||
timeout = 600;
|
timeout = 600;
|
||||||
command = "${pkgs.sway}/bin/swaymsg 'output * dpms off'";
|
command = "${pkgs.sway}/bin/swaymsg 'output * dpms off'";
|
||||||
resumeCommand = "${pkgs.sway}/bin/swaymsg 'output * dpms on'";
|
resumeCommand = "${pkgs.sway}/bin/swaymsg 'output * dpms on'";
|
||||||
}
|
})
|
||||||
|
(mkIf (!gui.sway.desktop) {
|
||||||
|
timeout = 300;
|
||||||
|
command = "${pkgs.swaylock}/bin/swaylock -f -c 000000";
|
||||||
|
})
|
||||||
|
(mkIf (!gui.sway.desktop) {
|
||||||
|
timeout = 420;
|
||||||
|
command = "${pkgs.sway}/bin/swaymsg 'output * dpms off'";
|
||||||
|
resumeCommand = "${pkgs.sway}/bin/swaymsg 'output * dpms on'";
|
||||||
|
})
|
||||||
|
(mkIf (!gui.sway.desktop) {
|
||||||
|
timeout = 600;
|
||||||
|
command = "systemctl suspend";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
events = [
|
||||||
|
(mkIf (!gui.sway.desktop) {
|
||||||
|
event = "before-sleep";
|
||||||
|
command = "${pkgs.swaylock}/bin/swaylock -f -c 000000";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -33,6 +33,9 @@ in
|
|||||||
services.gnome.gnome-keyring.enable = mkIf cfg.secrets true;
|
services.gnome.gnome-keyring.enable = mkIf cfg.secrets true;
|
||||||
services.dbus.packages = mkIf cfg.secrets [ pkgs.gnome.seahorse ];
|
services.dbus.packages = mkIf cfg.secrets [ pkgs.gnome.seahorse ];
|
||||||
|
|
||||||
|
# Remove when nixpkgs issue 143365 is fixed
|
||||||
|
security.pam.services.swaylock = mkIf (!cfg.sway.desktop) {};
|
||||||
|
|
||||||
xdg.portal.config.common = [ "wlr" "gtk" ];
|
xdg.portal.config.common = [ "wlr" "gtk" ];
|
||||||
programs.thunar.enable = true;
|
programs.thunar.enable = true;
|
||||||
|
|
||||||
|
|||||||
74
pkgs/jhelioviewer.nix
Normal file
74
pkgs/jhelioviewer.nix
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
{ lib
|
||||||
|
, stdenv
|
||||||
|
, jdk
|
||||||
|
, jre
|
||||||
|
, ant
|
||||||
|
, jogl
|
||||||
|
, fetchFromGitHub
|
||||||
|
, makeDesktopItem
|
||||||
|
, copyDesktopItems
|
||||||
|
, stripJavaArchivesHook
|
||||||
|
, makeWrapper
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "JHelioviewer";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Helioviewer-Project";
|
||||||
|
repo = "JHelioviewer-SWHV";
|
||||||
|
rev = "537b60bbf4c40e46b98d7a1c0167f3c943e73cd2";
|
||||||
|
hash = "sha256-LBiywlXAgMifn6ov04CwEnfhSWskSzIy5Cs3NeL90Ts=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
jdk
|
||||||
|
ant
|
||||||
|
stripJavaArchivesHook
|
||||||
|
makeWrapper
|
||||||
|
copyDesktopItems
|
||||||
|
];
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
ant
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
|
||||||
|
desktopItems = [
|
||||||
|
(makeDesktopItem {
|
||||||
|
name = "jhelioviewer";
|
||||||
|
desktopName = "JHelioviewer";
|
||||||
|
exec = "jhelioviewer";
|
||||||
|
comment = "A visualization tool for solar physics data based on the JPEG 2000 image compression standard, and part of the open source ESA/NASA Helioviewer Project";
|
||||||
|
icon = "hvLogo";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/share/java/
|
||||||
|
mkdir -p $out/share/java/lib
|
||||||
|
|
||||||
|
install -Dm644 JHelioviewer.jar $out/share/java/
|
||||||
|
|
||||||
|
cp -r lib/* $out/share/java/lib/
|
||||||
|
|
||||||
|
rm $out/share/java/lib/jogl/*.jar
|
||||||
|
cp -v ${jogl}/share/java/jogl*.jar ${jogl}/share/java/glue*.jar $out/share/java/lib/jogl
|
||||||
|
|
||||||
|
mkdir $out/bin
|
||||||
|
makeWrapper ${jre}/bin/java $out/bin/jhelioviewer \
|
||||||
|
--add-flags "-cp $out/share/java/JHelioviewer.jar" \
|
||||||
|
--add-flags "--add-exports java.desktop/sun.awt=ALL-UNNAMED" \
|
||||||
|
--add-flags "--add-exports java.desktop/sun.swing=ALL-UNNAMED" \
|
||||||
|
--add-flags "org.helioviewer.jhv.JHelioviewer"
|
||||||
|
|
||||||
|
mkdir -p $out/share/icons
|
||||||
|
|
||||||
|
cp -v docs/hvLogo.png $out/share/icons/
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user