feat: swayfx flake -> nixpkgs, add cosmic flake

inputs: remove swayfx
overlays: get rid of most of my NUR overrides
swayfx: flake -> nixpkgs cache
cosmic: init
options: simplify mkIf guard for config.dotfiles.desktop
This commit is contained in:
winston 2024-08-11 18:08:20 +02:00
parent 011ca118cc
commit b4cfeb3ebb
Signed by: winston
GPG key ID: 3786770EDBC2B481
12 changed files with 645 additions and 611 deletions

View file

@ -74,6 +74,22 @@
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1717312683,
"narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=",
"owner": "nix-community",
"repo": "flake-compat",
"rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
@ -216,6 +232,29 @@
"type": "github"
}
},
"nixos-cosmic": {
"inputs": {
"flake-compat": "flake-compat",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-stable": "nixpkgs-stable",
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1723340593,
"narHash": "sha256-SYrNboypGpiFlE6g3UWdfqJeMihR0dBJPAwTwO6T64A=",
"owner": "lilyinstarlight",
"repo": "nixos-cosmic",
"rev": "94a1e5a4888ab0cb5ad0fe602d03d867a320348b",
"type": "github"
},
"original": {
"owner": "lilyinstarlight",
"repo": "nixos-cosmic",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1722421184,
@ -232,6 +271,22 @@
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1722987190,
"narHash": "sha256-68hmex5efCiM2aZlAAEcQgmFI4ZwWt8a80vOeB/5w3A=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "21cc704b5e918c5fbf4f9fff22b4ac2681706d90",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1722813957,
@ -248,22 +303,6 @@
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1713128889,
"narHash": "sha256-aB90ZqzosyRDpBh+rILIcyP5lao8SKz8Sr2PSWvZrzk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "2748d22b45a99fb2deafa5f11c7531c212b2cefa",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nur": {
"locked": {
"lastModified": 1722934043,
@ -314,50 +353,32 @@
"nekowinston-nur": "nekowinston-nur",
"nix-index-database": "nix-index-database",
"nix-vscode-extensions": "nix-vscode-extensions",
"nixos-cosmic": "nixos-cosmic",
"nixpkgs": "nixpkgs_2",
"nur": "nur",
"pre-commit-hooks": "pre-commit-hooks",
"swayfx": "swayfx",
"vscode-server": "vscode-server",
"wsl": "wsl"
}
},
"scenefx": {
"inputs": {
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1715160751,
"narHash": "sha256-S8m7phTU7QYgAq4B0hjH5WdtTjHDcNVhYfPFdhbty+A=",
"owner": "wlrfx",
"repo": "scenefx",
"rev": "2ec3505248e819191c37cb831197629f373326fb",
"type": "github"
},
"original": {
"owner": "wlrfx",
"repo": "scenefx",
"type": "github"
}
},
"swayfx": {
"rust-overlay": {
"inputs": {
"nixpkgs": [
"nixos-cosmic",
"nixpkgs"
],
"scenefx": "scenefx"
]
},
"locked": {
"lastModified": 1722269591,
"narHash": "sha256-uqRVQmhtswgbM9bp4bIkQhS1J2fYqOuLo/Rt9ZpLT7I=",
"owner": "willpower3309",
"repo": "swayfx",
"rev": "4d7ca7d975fb6d8ccae9830765986d5812fd011d",
"lastModified": 1723256423,
"narHash": "sha256-9iDTrfVM+mbcad31a47oqW8t8tfSA4C/si6F8F2DO/w=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "615cfd85b4d9c51811a8d875374268fab5bd4089",
"type": "github"
},
"original": {
"owner": "willpower3309",
"repo": "swayfx",
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},

View file

@ -21,6 +21,7 @@
system = "x86_64-linux";
username = "winston";
isGraphical = true;
extraModules = [ inputs.nixos-cosmic.nixosModules.default ];
}
{
host = "yuba";
@ -110,12 +111,14 @@
nixConfig = {
extra-substituters = [
"https://nix-community.cachix.org"
"https://cosmic.cachix.org"
"https://pre-commit-hooks.cachix.org"
"https://nekowinston.cachix.org"
"https://mic92.cachix.org"
];
extra-trusted-public-keys = [
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE="
"pre-commit-hooks.cachix.org-1:Pkk3Panw5AW24TOv6kz3PvLhlH8puAsJTBbOPmBo7Rc="
"nekowinston.cachix.org-1:lucpmaO+JwtoZj16HCO1p1fOv68s/RL1gumpVzRHRDs="
"mic92.cachix.org-1:gi8IhgiT3CYZnJsaW7fxznzTkMUOn1RY4GmXdT/nXYQ="
@ -159,10 +162,6 @@
inputs.flake-utils.follows = "flake-utils";
inputs.nixpkgs.follows = "nixpkgs";
};
swayfx = {
url = "github:willpower3309/swayfx";
inputs.nixpkgs.follows = "nixpkgs";
};
vscode-server = {
url = "github:nix-community/nixos-vscode-server";
inputs.flake-utils.follows = "flake-utils";
@ -180,5 +179,10 @@
inputs.nixpkgs.follows = "nixpkgs";
inputs.nixpkgs-stable.follows = "nixpkgs";
};
nixos-cosmic = {
url = "github:lilyinstarlight/nixos-cosmic";
inputs.nixpkgs.follows = "nixpkgs";
};
};
}

View file

@ -15,7 +15,7 @@ in
};
programs.firefox = {
enable = isLinux;
enable = false;
profiles.default = {
search.default = "DuckDuckGo";
search.force = true;

View file

@ -11,9 +11,7 @@ let
wallpaper-uri = "file://${../wallpapers/dhm_1610.png}";
in
{
config =
lib.mkIf (config.isGraphical && pkgs.stdenv.isLinux && (osConfig.dotfiles.desktop == "gnome"))
{
config = lib.mkIf (osConfig.dotfiles.desktop == "gnome") {
home.packages = with pkgs.gnomeExtensions; [
appindicator
blur-my-shell

View file

@ -11,7 +11,7 @@ in
config = lib.mkIf (config.isGraphical && pkgs.stdenv.isLinux) {
home.pointerCursor = {
name = "macOS-Monterey";
package = pkgs.nur.repos.nekowinston.apple-cursor;
package = pkgs.apple-cursor;
size = 24;
};

View file

@ -6,9 +6,7 @@
...
}:
{
config =
lib.mkIf (config.isGraphical && pkgs.stdenv.isLinux && (osConfig.dotfiles.desktop == "sway"))
{
config = lib.mkIf (osConfig.dotfiles.desktop == "hyprland") {
home = {
packages = with pkgs; [
blueberry

View file

@ -23,9 +23,7 @@ let
};
in
{
config =
lib.mkIf (config.isGraphical && pkgs.stdenv.isLinux && (osConfig.dotfiles.desktop == "sway"))
{
config = lib.mkIf (osConfig.dotfiles.desktop == "sway") {
fonts.fontconfig.enable = true;
home = {

View file

@ -0,0 +1,11 @@
{ lib, config, ... }:
{
config = lib.mkIf (config.dotfiles.desktop == "cosmic") {
environment.sessionVariables.NIXOS_OZONE_WL = "1";
services = {
desktopManager.cosmic.enable = true;
displayManager.cosmic-greeter.enable = true;
};
};
}

View file

@ -2,6 +2,7 @@
{
imports = [
./boot.nix
./cosmic.nix
./gnome.nix
./greeter.nix
./input.nix

View file

@ -34,9 +34,9 @@
environment.systemPackages = with pkgs; [
cabextract
discover-overlay
lutris-free
mangohud
nur.repos.nekowinston.discover-overlay
virt-manager
wineWowPackages.staging
winetricks

View file

@ -54,6 +54,8 @@ rec {
${target}."${host}" = builder {
inherit system;
modules = [
(
{ config, ... }:
{
options = {
dotfiles = {
@ -65,11 +67,13 @@ rec {
desktop = mkOption {
type = types.nullOr (
types.enum [
"cosmic"
"gnome"
"hyprland"
"sway"
]
);
default = "sway";
default = if (pkgs.stdenv.isLinux && config.dotfiles.isGraphical) then "sway" else null;
description = "The desktop environment to use";
};
};
@ -79,9 +83,9 @@ rec {
description = "Whether the system is a graphical target";
};
};
config.dotfiles.desktop = pkgs.lib.mkIf (!isGraphical) null;
config.networking.hostName = host;
}
)
./common/shared
./common/${hostPlatform}
./${host}

View file

@ -7,7 +7,6 @@
srcs = prev.callPackages ../_sources/generated.nix { };
in
{
inherit (inputs.swayfx.packages.${prev.system}) swayfx-unwrapped;
nushellPlugins = (prev.nushellPlugins or { }) // {
clipboard = prev.callPackage ./nu_plugin_clipboard.nix { };
};