[general] add gnome config, de-clutter puzzlevision system config
Signed-off-by: Jo <johannesreckers2006@gmail.com>
This commit is contained in:
parent
339bd28d1d
commit
fbba93c16a
14 changed files with 257 additions and 53 deletions
76
flake.lock
76
flake.lock
|
@ -1,23 +1,33 @@
|
|||
{
|
||||
"nodes": {
|
||||
"haumea": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"catppuccin": {
|
||||
"locked": {
|
||||
"lastModified": 1685133229,
|
||||
"narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=",
|
||||
"owner": "nix-community",
|
||||
"repo": "haumea",
|
||||
"rev": "34dd58385092a23018748b50f9b23de6266dffc2",
|
||||
"lastModified": 1716884128,
|
||||
"narHash": "sha256-hzTzcX/qIGf93WVvk2jlLL3N7IgIlWylOBQkgwfTq8w=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "296adaf9331cd2c1eb479a25d5207508fbd06188",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "v0.2.2",
|
||||
"repo": "haumea",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1716881121,
|
||||
"narHash": "sha256-oTf3enbe/lbiNzsyZ8ria+422hx4e/FB3xQcY2LPnJw=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "806e9d4a933dd1e75592e88894d4bd2f296f5bbf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "master",
|
||||
"repo": "nixos-hardware",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
|
@ -28,11 +38,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715930644,
|
||||
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
|
||||
"lastModified": 1716908526,
|
||||
"narHash": "sha256-Zl6e/sEVDh07K47XxDGPsXTYT4nI6llUDbQ4xMIwp7k=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
|
||||
"rev": "373ead20606efa9181cd15ba19a5deac7ead1492",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -44,11 +54,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1715787315,
|
||||
"narHash": "sha256-cYApT0NXJfqBkKcci7D9Kr4CBYZKOQKDYA23q8XNuWg=",
|
||||
"lastModified": 1716509168,
|
||||
"narHash": "sha256-4zSIhSRRIoEBwjbPm3YiGtbd8HDWzFxJjw5DYSDy1n8=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "33d1e753c82ffc557b4a585c77de43d4c922ebb5",
|
||||
"rev": "bfb7a882678e518398ce9a31a881538679f6f092",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -58,6 +68,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-catppuccin": {
|
||||
"locked": {
|
||||
"lastModified": 1716835396,
|
||||
"narHash": "sha256-H2dN5tooIaHqbU52ldreAhbxE33fxASflPqvMsoQFQc=",
|
||||
"owner": "isabelroses",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a554569da3b72f2896aa26537a4339ac45a15f66",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "isabelroses",
|
||||
"ref": "update-catppuccin",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"plasma-manager": {
|
||||
"inputs": {
|
||||
"home-manager": [
|
||||
|
@ -68,11 +94,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714856962,
|
||||
"narHash": "sha256-2te5GG8TVNBF44uMF4G0XFGW+Jt02i/ZkspSNFzjgT0=",
|
||||
"lastModified": 1716902607,
|
||||
"narHash": "sha256-jShqpVupP/7ksp6gCBVG9/05zYSX8Q+z6eGe9HLYtUs=",
|
||||
"owner": "pjones",
|
||||
"repo": "plasma-manager",
|
||||
"rev": "1554e19ede17de46106dd95820eeea05086a5720",
|
||||
"rev": "4a255e5ea6bf2c7815d893a693c5c801d835ba6b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -83,9 +109,11 @@
|
|||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"haumea": "haumea",
|
||||
"catppuccin": "catppuccin",
|
||||
"hardware": "hardware",
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-catppuccin": "nixpkgs-catppuccin",
|
||||
"plasma-manager": "plasma-manager"
|
||||
}
|
||||
}
|
||||
|
|
12
flake.nix
12
flake.nix
|
@ -18,14 +18,14 @@
|
|||
inputs.home-manager.follows = "home-manager";
|
||||
};
|
||||
|
||||
# Haumea (map directory structure into an attribute set)
|
||||
haumea = {
|
||||
url = "github:nix-community/haumea/v0.2.2";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
hardware.url = "github:NixOS/nixos-hardware/master";
|
||||
|
||||
catppuccin.url = "github:catppuccin/nix";
|
||||
|
||||
nixpkgs-catppuccin.url = "github:isabelroses/nixpkgs/update-catppuccin";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, home-manager, plasma-manager, haumea, ... } @inputs:
|
||||
outputs = { self, nixpkgs, home-manager, plasma-manager, hardware, catppuccin, nixpkgs-catppuccin, ... } @inputs:
|
||||
let
|
||||
inherit (self) outputs;
|
||||
|
||||
|
|
|
@ -8,10 +8,10 @@
|
|||
}: {
|
||||
# You can import other NixOS modules here
|
||||
imports = [
|
||||
# If you want to use modules from other flakes (such as nixos-hardware):
|
||||
# inputs.hardware.nixosModules.common-cpu-amd
|
||||
# inputs.hardware.nixosModules.common-ssd
|
||||
outputs.nixosModules.desktop.kde
|
||||
inputs.hardware.nixosModules.common-pc-laptop
|
||||
inputs.hardware.nixosModules.common-cpu-intel
|
||||
inputs.hardware.nixosModules.common-pc-laptop-ssd
|
||||
outputs.nixosModules.desktop.gnome
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
|
@ -46,13 +46,16 @@
|
|||
options = "--delete-older-than 3d";
|
||||
};
|
||||
};
|
||||
|
||||
# Set hostname
|
||||
networking.hostName = "puzzlevision";
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Install the latest kernel
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
|
||||
# Improve SSD performance
|
||||
fileSystems."/".options = [ "noatime" "nodiratime" "discard" ];
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.grub = {
|
||||
enable = true;
|
||||
|
@ -70,11 +73,6 @@
|
|||
'';
|
||||
};
|
||||
|
||||
networking.hostName = "puzzlevision";
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Berlin";
|
||||
|
||||
|
@ -114,8 +112,16 @@
|
|||
};
|
||||
|
||||
# Enable bluetooth on boot
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.bluetooth.powerOnBoot = true;
|
||||
hardware.bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
|
||||
settings = {
|
||||
General = {
|
||||
Disable = "Handsfree";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Enable automatic screen rotation and similar features
|
||||
hardware.sensor.iio.enable = true;
|
||||
|
@ -134,11 +140,11 @@
|
|||
users.defaultUserShell = pkgs.fish;
|
||||
programs.fish.enable = true;
|
||||
|
||||
# Define a user account.
|
||||
# Define user accounts
|
||||
users.users = {
|
||||
jo = {
|
||||
isNormalUser = true;
|
||||
description = "Personal account for general tasks";
|
||||
description = "Jo";
|
||||
initialPassword = "jo";
|
||||
extraGroups = [ "networkmanager" "wheel" "docker" "tty" "dialout" ];
|
||||
};
|
||||
|
|
|
@ -3,6 +3,11 @@
|
|||
gruvbox = {
|
||||
plasma = import ./themes/gruvbox/plasma.nix;
|
||||
};
|
||||
|
||||
catppuccin = {
|
||||
gnome = import ./themes/catppuccin/gnome.nix;
|
||||
global = import ./themes/catppuccin/global.nix;
|
||||
};
|
||||
};
|
||||
|
||||
development = {
|
||||
|
|
|
@ -9,8 +9,6 @@ in {
|
|||
openssh
|
||||
];
|
||||
|
||||
services.ssh-agent.enable = true;
|
||||
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
|
|
17
modules/home-manager/themes/catppuccin/global.nix
Normal file
17
modules/home-manager/themes/catppuccin/global.nix
Normal file
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
outputs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
inputs.catppuccin.homeManagerModules.catppuccin
|
||||
];
|
||||
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
accent = "blue";
|
||||
flavor = "macchiato";
|
||||
};
|
||||
}
|
12
modules/home-manager/themes/catppuccin/gnome.nix
Normal file
12
modules/home-manager/themes/catppuccin/gnome.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
outputs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
gtk = {
|
||||
enable = true;
|
||||
catppuccin.enable = true;
|
||||
};
|
||||
}
|
|
@ -9,6 +9,35 @@
|
|||
services.xserver.enable = true;
|
||||
|
||||
# Enable the GNOME Desktop Environment.
|
||||
services.displayManager.gdm.enable = true;
|
||||
services.desktopManager.gnome.enable = true;
|
||||
}
|
||||
services.xserver.displayManager.gdm.enable = true;
|
||||
services.xserver.desktopManager.gnome.enable = true;
|
||||
|
||||
environment.gnome.excludePackages = (with pkgs; [
|
||||
gnome-tour
|
||||
gedit
|
||||
]) ++ (with pkgs.gnome; [
|
||||
cheese
|
||||
gnome-music
|
||||
epiphany # Gnome web
|
||||
tali # Poker game
|
||||
iagno # Go game
|
||||
hitori # Sudoku game
|
||||
yelp # Help view
|
||||
gnome-contacts
|
||||
gnome-initial-setup
|
||||
geary
|
||||
]);
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
|
||||
programs.kdeconnect = {
|
||||
enable = true;
|
||||
package = pkgs.gnomeExtensions.gsconnect;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
gnome.gnome-tweaks
|
||||
];
|
||||
}
|
|
@ -5,4 +5,8 @@ pkgs: {
|
|||
themes = {
|
||||
kde-gruvbox-colors = pkgs.callPackage ./themes/kde-gruvbox-colors.nix { };
|
||||
};
|
||||
|
||||
gnomeExtensions = {
|
||||
rounded-window-corners = pkgs.callPackage ./gnomeExtensions/rounded-window-corners.nix { };
|
||||
};
|
||||
}
|
||||
|
|
26
pkgs/gnomeExtensions/rounded-window-corners.nix
Normal file
26
pkgs/gnomeExtensions/rounded-window-corners.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ stdenv, fetchFromGitHub, pkgs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rounded-window-corners";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "flexagoon";
|
||||
repo = pname;
|
||||
rev = "61c326e3d6cba36fe3d07cf1c15e6c74d3f9abb1";
|
||||
sha256 = "sha256-jS6G9wSKSXAxNhCmuew6pTcYa1gTZqbfrcAZ0ky4vkc=";
|
||||
};
|
||||
|
||||
buildInputs = with pkgs; [ nodejs_22 gettext just ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
just install
|
||||
|
||||
mkdir -p $out/share/gnome-shell/extensions
|
||||
cp ~/.local/share/gnome-shell/extensions/rounded-window-corners@fxgn $out/share/gnome-shell/extensions/rounded-window-corners@fxgn
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
}
|
BIN
resources/wallpapers/animals_at_campfire.jpg
Normal file
BIN
resources/wallpapers/animals_at_campfire.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 880 KiB |
|
@ -30,6 +30,7 @@
|
|||
lutris
|
||||
vesktop
|
||||
steam
|
||||
lunar-client
|
||||
];
|
||||
|
||||
# Enable home-manager
|
||||
|
|
72
users/jo/desktop/gnome.nix
Normal file
72
users/jo/desktop/gnome.nix
Normal file
|
@ -0,0 +1,72 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
outputs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
home.packages = with pkgs.gnomeExtensions; [
|
||||
dash-to-dock
|
||||
user-themes
|
||||
blur-my-shell
|
||||
appindicator
|
||||
unite
|
||||
];
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
catppuccin.enable = true;
|
||||
};
|
||||
|
||||
# Use `dconf watch /` to track stateful changes you are doing, then set them here.
|
||||
dconf.settings = {
|
||||
"org/gnome/desktop/interface" = {
|
||||
color-scheme = "prefer-dark";
|
||||
};
|
||||
|
||||
"org/gnome/shell" = {
|
||||
favorite-apps = [
|
||||
"org.gnome.Nautilus.desktop"
|
||||
"firefox.desktop"
|
||||
"spotify.desktop"
|
||||
"phpstorm.desktop"
|
||||
];
|
||||
|
||||
enabled-extensions = [
|
||||
"user-theme@gnome-shell-extensions.gcampax.github.com"
|
||||
"dash-to-dock@micxgx.gmail.com"
|
||||
"blur-my-shell@aunetx"
|
||||
"appindicatorsupport@rgcjonas.gmail.com"
|
||||
"unite@hardpixel.eu"
|
||||
];
|
||||
};
|
||||
|
||||
"org/gnome/desktop/wm/preferences" = {
|
||||
workspace-names = [ "Main" ];
|
||||
};
|
||||
|
||||
"org/gnome/desktop/background" = {
|
||||
picture-uri = "${outputs.resources.wallpapers}/animals_at_campfire.jpg";
|
||||
picture-uri-dark = "${outputs.resources.wallpapers}/animals_at_campfire.jpg";
|
||||
};
|
||||
|
||||
"org/gnome/shell/extensions/unite" = {
|
||||
use-activities-text = false;
|
||||
extend-left-box = false;
|
||||
reduce-panel-spacing = false;
|
||||
window-buttons-placement = "first";
|
||||
show-legacy-tray = false;
|
||||
show-appmenu-button = false;
|
||||
show-desktop-name = false;
|
||||
enable-titlebar-actions = false;
|
||||
restrict-to-primary-screen = true;
|
||||
hide-activities-button = "never";
|
||||
hide-window-titlebars = "maximized";
|
||||
show-window-title = false;
|
||||
autofocus-windows = true;
|
||||
show-window-buttons = "maximized";
|
||||
notifications-position = "right";
|
||||
window-buttons-theme = "catppuccin";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -7,7 +7,8 @@
|
|||
...
|
||||
}: {
|
||||
imports = [
|
||||
./desktop/kde.nix
|
||||
./desktop/gnome.nix
|
||||
outputs.homeManagerModules.themes.catppuccin.global
|
||||
outputs.homeManagerModules.development.ssh
|
||||
];
|
||||
|
||||
|
@ -31,6 +32,7 @@
|
|||
qflipper
|
||||
wineWowPackages.waylandFull
|
||||
vesktop
|
||||
lunar-client
|
||||
|
||||
# For development
|
||||
avra
|
||||
|
@ -38,7 +40,11 @@
|
|||
vscodium
|
||||
jetbrains.phpstorm
|
||||
git
|
||||
bun
|
||||
nodejs_22
|
||||
|
||||
# Work stuff for when I'm not actually working
|
||||
teams-for-linux
|
||||
enpass
|
||||
];
|
||||
|
||||
# Enable home-manager
|
||||
|
|
Loading…
Reference in a new issue