feat: add zed-editor wrapped in FHS compliant environment

feat: various other tweaks
This commit is contained in:
Jo 2024-09-02 18:57:59 +02:00
parent 32ab43f7dd
commit 067bc992b6
10 changed files with 99 additions and 54 deletions

View file

@ -1,6 +1,6 @@
# nix-config # nix-config
Jo's absolutely insane NixOS configuration - as of july 2024 Jo's absolutely insane NixOS configuration - as of August 2024
## Deployment ## Deployment

View file

@ -2,11 +2,11 @@
"nodes": { "nodes": {
"catppuccin": { "catppuccin": {
"locked": { "locked": {
"lastModified": 1721784420, "lastModified": 1724469296,
"narHash": "sha256-bgF6fN4Qgk7NErFKGuuqWXcLORsiykTYyqMUFRiAUBY=", "narHash": "sha256-p3R4LUNk6gC+fTKRUm9ByXaoRIocnQMwVuJSIxECQ8o=",
"owner": "catppuccin", "owner": "catppuccin",
"repo": "nix", "repo": "nix",
"rev": "8bdb55cc1c13f572b6e4307a3c0d64f1ae286a4f", "rev": "874e668ddaf3687e8d38ccd0188a641ffefe1cfb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -70,11 +70,11 @@
}, },
"hardware": { "hardware": {
"locked": { "locked": {
"lastModified": 1722332872, "lastModified": 1724878143,
"narHash": "sha256-2xLM4sc5QBfi0U/AANJAW21Bj4ZX479MHPMPkB+eKBU=", "narHash": "sha256-UjpKo92iZ25M05kgSOw/Ti6VZwpgdlOa73zHj8OcaDk=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "14c333162ba53c02853add87a0000cbd7aa230c2", "rev": "95c3dfe6ef2e96ddc1ccdd7194e3cda02ca9a8ef",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -91,11 +91,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722321190, "lastModified": 1725180166,
"narHash": "sha256-WeVWVRqkgrbLzmk6FfJoloJ7Xe7HWD27Pv950IUG2kI=", "narHash": "sha256-fzssXuGR/mCeGbzM1ExaTqDz7QDGta3WA4jJsZyRruo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "4fcd54df7cbb1d79cbe81209909ee8514d6b17a4", "rev": "471e3eb0a114265bcd62d11d58ba8d3421ee68eb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -122,11 +122,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1722185531, "lastModified": 1725103162,
"narHash": "sha256-veKR07psFoJjINLC8RK4DiLniGGMgF3QMlS4tb74S6k=", "narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "52ec9ac3b12395ad677e8b62106f0b98c1f8569d", "rev": "12228ff1752d7b7624a54e9c1af4b222b3c1073b",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -24,6 +24,11 @@
# Use `dconf watch /` to track stateful changes you are doing, then set them here. # Use `dconf watch /` to track stateful changes you are doing, then set them here.
dconf.settings = { dconf.settings = {
"org/gnome/desktop/background" = {
picture-uri = lib.snowfall.fs.get-file "resources/wallpapers/maid_in_forest_with_lantern.jpg";
picture-uri-dark = lib.snowfall.fs.get-file "resources/wallpapers/maid_in_forest_with_lantern.jpg";
};
"org/gnome/shell" = { "org/gnome/shell" = {
favorite-apps = [ favorite-apps = [
"org.gnome.Nautilus.desktop" "org.gnome.Nautilus.desktop"
@ -65,4 +70,4 @@
window-buttons-theme = "catppuccin"; window-buttons-theme = "catppuccin";
}; };
}; };
} }

View file

@ -18,7 +18,7 @@
# All other arguments come from the home home. # All other arguments come from the home home.
config, config,
... ...
}: { }: with lib; with lib.${namespace}; {
imports = [ imports = [
./apps/gnome.nix ./apps/gnome.nix
]; ];
@ -43,6 +43,8 @@
lunar-client lunar-client
steam steam
g4music g4music
blanket
bitwarden-desktop
### Development ### Development
avra avra
@ -51,8 +53,12 @@
git git
nodejs_22 nodejs_22
bun bun
forge-sparks
devenv devenv
zed-editor
### Rust development specific
rustup
jetbrains.rust-rover
### Work ### Work
teams-for-linux teams-for-linux
@ -61,9 +67,11 @@
### Notes & Organisation ### Notes & Organisation
obsidian obsidian
### Backups & Synchronization ### Virtual Reality
celeste sidequest
]; ];
puzzlevision.apps.zed-editor.enable = true;
home.stateVersion = "24.05"; home.stateVersion = "24.05";
} }

View file

@ -0,0 +1,35 @@
{
lib,
pkgs,
inputs,
namespace, # The flake namespace, set in flake.nix. If not set, defaults to "internal".
home, # The home architecture for this host (eg. `x86_64-linux`).
target, # The Snowfall Lib target for this home (eg. `x86_64-home`).
format, # A normalized name for the home target (eg. `home`).
virtual, # A boolean to determine whether this home is a virtual target using nixos-generators.
host, # The host name for this home.
config,
...
}: with lib; with lib.${namespace};
let
cfg = config.${namespace}.apps.zed-editor;
zed-fhs = pkgs.buildFHSUserEnv {
name = "zed";
targetPkgs = pkgs:
with pkgs; [
zed-editor
];
runScript = "zed";
};
in {
options.${namespace}.apps.zed-editor = { enable = mkEnableOption "zed-editor"; };
home.packages = [zed-fhs];
config = mkIf cfg.enable {
home.packages = [zed-fhs];
};
}

View file

@ -26,34 +26,39 @@
icon = { icon = {
enable = true; enable = true;
accent = "blue"; accent = "blue";
flavor = "frappe"; flavor = "macchiato";
}; };
}; };
theme = { theme = {
name = "Colloid-Dark-Catppuccin"; #name = "Colloid-Dark-Catppuccin";
package = pkgs.colloid-gtk-theme.override { #package = pkgs.colloid-gtk-theme.override {
themeVariants = ["default"]; #themeVariants = ["default"];
colorVariants = ["dark"]; #colorVariants = ["dark"];
sizeVariants = ["standard"]; #sizeVariants = ["standard"];
tweaks = ["catppuccin"]; #tweaks = ["catppuccin"];
#};
name = "Graphite-teal-Dark-nord";
package = pkgs.graphite-gtk-theme.override {
themeVariants = ["blue" "teal"];
colorVariants = ["dark"];
sizeVariants = ["standard"];
tweaks = ["nord"];
withGrub = true;
grubScreens = ["1080p"];
}; };
}; };
}; };
dconf.settings = { dconf.settings = {
"org/gnome/desktop/background" = {
picture-uri = lib.snowfall.fs.get-file "resources/wallpapers/pond_sidewalk_dusk.jpg";
picture-uri-dark = lib.snowfall.fs.get-file "resources/wallpapers/pond_sidewalk_dusk.jpg";
};
"org/gnome/shell/extensions/user-theme" = { "org/gnome/shell/extensions/user-theme" = {
name = "Colloid-Dark-Catppuccin"; name = "Graphite-teal-Dark-nord";
}; };
"org/gnome/desktop/interface" = { "org/gnome/desktop/interface" = {
color-scheme = "prefer-dark"; color-scheme = "prefer-dark";
cursor-theme = "catppuccin-frappe-blue-cursors"; cursor-theme = "catppuccin-macchiato-blue-cursors";
}; };
}; };
} }

View file

@ -25,21 +25,23 @@ in {
services.xserver.displayManager.gdm.enable = true; services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true; services.xserver.desktopManager.gnome.enable = true;
environment.gnome.excludePackages = (with pkgs; [ environment.gnome.excludePackages = with pkgs; [
gnome-tour gnome-tour
gedit gedit
cheese cheese
geary geary
yelp # Help view yelp # Help view
epiphany # Gnome web epiphany # Gnome web
]) ++ (with pkgs.gnome; [ gnome-console
gnome-terminal
gnome-music gnome-music
tali # Poker game tali # Poker game
iagno # Go game iagno # Go game
hitori # Sudoku game hitori # Sudoku game
gnome-contacts gnome-contacts
gnome-initial-setup gnome-initial-setup
]); gnome-system-monitor
];
programs.dconf.enable = true; programs.dconf.enable = true;
@ -52,6 +54,8 @@ in {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
gnome-tweaks gnome-tweaks
blackbox-terminal # Terminal app
resources # System resource manager
]; ];
}; };
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 MiB

View file

@ -29,23 +29,6 @@ with lib.${namespace};
inputs.hardware.nixosModules.common-pc-laptop-ssd inputs.hardware.nixosModules.common-pc-laptop-ssd
]; ];
nixpkgs = {
overlays = [
(final: prev: {
linuxPackages_latest = prev.linuxPackages_latest.extend (lpfinal: lpprev: {
rtl8821ce = lpprev.rtl8821ce.overrideAttrs ({src, ...}: {
version = "${lpprev.kernel.version}-unstable-2024-03-26";
src = final.fetchFromGitHub {
inherit (src) owner repo;
rev = "f119398d868b1a3395f40c1df2e08b57b2c882cd";
hash = "sha256-EfpKa5ZRBVM5T8EVim3cVX1PP1UM9CyG6tN5Br8zYww=";
};
});
});
})
];
};
nix = { nix = {
settings = { settings = {
auto-optimise-store = true; auto-optimise-store = true;
@ -121,6 +104,9 @@ with lib.${namespace};
# Set console keymap. # Set console keymap.
console.keyMap = "de"; console.keyMap = "de";
services.xserver = {
xkb.layout = "de";
};
# Enable the power-profiles-daemon service for improved battery management. # Enable the power-profiles-daemon service for improved battery management.
services.power-profiles-daemon.enable = true; services.power-profiles-daemon.enable = true;
@ -182,7 +168,7 @@ with lib.${namespace};
# Configure home-manager # Configure home-manager
home-manager = { home-manager = {
backupFileExtension = "homeManagerBackup"; backupFileExtension = "homeManagerBackupFile69";
}; };
# Provide users with some sane default packages. # Provide users with some sane default packages.
@ -190,6 +176,8 @@ with lib.${namespace};
### General ### General
nano nano
firefox firefox
chromium
lutris
vlc vlc
spotify spotify