Full Refactor and history reset
This commit is contained in:
141
desktop.nix
Normal file
141
desktop.nix
Normal file
@@ -0,0 +1,141 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
makeDesktopItem,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
inputs.hyprland.nixosModules.default
|
||||
inputs.home-manager.nixosModules.default
|
||||
];
|
||||
|
||||
# Enable the X11 windowing system.
|
||||
services.xserver.enable = true;
|
||||
|
||||
# Configure keymap in X11
|
||||
services.xserver = {
|
||||
xkb.layout = "us";
|
||||
xkb.variant = "";
|
||||
};
|
||||
|
||||
#services.libinput.enable = true;
|
||||
xdg.portal.enable = true;
|
||||
xdg.portal.wlr.enable = true;
|
||||
|
||||
environment.sessionVariables = {
|
||||
QT_QPA_PLATFORMTHEME = "gtk3";
|
||||
QT_QPA_PLATFORMTHEME_QT6 = "gtk3";
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
users.joe = {
|
||||
home.pointerCursor = {
|
||||
gtk.enable = true;
|
||||
x11.enable = true;
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Classic";
|
||||
size = 16;
|
||||
};
|
||||
# gtk.enable = true;
|
||||
# qt.enable = true;
|
||||
# qt.platformTheme = "gtk";
|
||||
};
|
||||
};
|
||||
|
||||
users.users.joe.packages = with pkgs; [
|
||||
hyprpolkitagent
|
||||
hyprtoolkit
|
||||
gsettings-desktop-schemas
|
||||
adw-gtk3
|
||||
candy-icons
|
||||
wf-recorder
|
||||
hyprpaper
|
||||
nemo-with-extensions
|
||||
google-chrome
|
||||
mpv
|
||||
proton-pass
|
||||
];
|
||||
|
||||
#KDE
|
||||
# services.displayManager.sddm.enable = true;
|
||||
# services.displayManager.sddm.wayland.enable = true;
|
||||
|
||||
# services.desktopManager.plasma6.enable = true;
|
||||
# environment.plasma6.excludePackages = with pkgs.kdePackages; [
|
||||
# oxygen
|
||||
# akonadi
|
||||
# ];
|
||||
# programs.kdeconnect.enable = true;
|
||||
|
||||
nix.settings = {
|
||||
substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-substituters = [ "https://hyprland.cachix.org" ];
|
||||
trusted-public-keys = [ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc=" ];
|
||||
};
|
||||
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
withUWSM = true; # recommended for most users
|
||||
xwayland.enable = true; # Xwayland can be disabled.
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
# portalPackage =
|
||||
# inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
};
|
||||
|
||||
programs.dms-shell = {
|
||||
enable = true;
|
||||
quickshell.package = inputs.quickshell.packages.${pkgs.stdenv.hostPlatform.system}.quickshell;
|
||||
};
|
||||
|
||||
programs.niri.enable = true;
|
||||
|
||||
home-manager = {
|
||||
users.joe = {
|
||||
home.file.".mozilla/firefox/default/chrome/keyfox".source = inputs.firefox-keyfox-theme;
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
profiles.default = {
|
||||
name = "Default";
|
||||
settings = {
|
||||
"extensions.activeThemeID" = "firefox-compact-dark@mozilla.org";
|
||||
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
||||
"browser.tabs.drawInTitlebar" = false;
|
||||
"browser.startup.homepage" = "chrome://browser/content/blanktab.html";
|
||||
"svg.context-properties.content.enabled" = true;
|
||||
};
|
||||
userChrome = ''
|
||||
@import "keyfox/userChrome.css";
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
kitty
|
||||
dbus
|
||||
notify-desktop
|
||||
libinput
|
||||
libnotify
|
||||
wl-clipboard
|
||||
xwayland-satellite
|
||||
pinentry-gtk2
|
||||
home-manager
|
||||
vlc
|
||||
zathura
|
||||
slurp
|
||||
grim
|
||||
];
|
||||
|
||||
xdg.mime.defaultApplications = {
|
||||
"text/html" = "org.qutebrowser.qutebrowser.desktop";
|
||||
"x-scheme-handler/http" = "firefox.desktop";
|
||||
"x-scheme-handler/https" = "firefox.desktop";
|
||||
"x-scheme-handler/about" = "firefox.desktop";
|
||||
"x-scheme-handler/unknown" = "firefox.desktop";
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user