support for gnome desktop

This commit is contained in:
Leonardo Eugênio 2022-11-07 11:24:40 -03:00
parent 0a1647e0e7
commit f7b9c71006
18 changed files with 155 additions and 143 deletions

View file

@ -35,6 +35,7 @@
};
outputs = inputs@{ nixpkgs, nixpkgs-unstable, home-manager, nur, ... }:
let
inherit (import ./user/variables.nix) desktop;
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
@ -43,14 +44,13 @@
lib = nixpkgs.lib;
common_modules = [
./system/configuration.nix
./system/sway.nix
# nur.nixosModules.nur
inputs.hyprland.nixosModules.default
{
programs.hyprland.enable = true;
# programs.hyprland.package = null;
}
(import ./overlays (inputs // {inherit system;}))
(import ./overlays (inputs // { inherit system; }))
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
@ -61,7 +61,8 @@
# arguments to home.nix
home-manager.extraSpecialArgs = { inherit inputs; };
}
];
] ++ lib.optional (desktop == "sway") ./system/sway.nix
++ lib.optional (desktop == "gnome") ./system/gnome.nix;
in {
nixosConfigurations = {
i15 = lib.nixosSystem {
@ -70,10 +71,8 @@
};
monolith = lib.nixosSystem {
inherit system;
modules = [
./hosts/monolith.nix
./system/gitlab-runner.nix
] ++ common_modules;
modules = [ ./hosts/monolith.nix ./system/gitlab-runner.nix ]
++ common_modules;
};
rainbow = lib.nixosSystem {
inherit system;

View file

@ -1,8 +1,8 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: let
btrfs_options = [ "compress=zstd:3" "noatime" ];
{ config, lib, pkgs, modulesPath, ... }:
let btrfs_options = [ "compress=zstd:3" "noatime" ];
in {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules =

View file

@ -4,31 +4,31 @@
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.availableKernelModules =
[ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/mapper/pixie";
fileSystems."/" = {
device = "/dev/mapper/pixie";
fsType = "btrfs";
options = [ "subvol=nixos" ];
};
boot.initrd.luks.devices."pixie".device = "/dev/disk/by-uuid/f4ae5858-d2d6-4cd1-a054-bf5147a9a928";
boot.initrd.luks.devices."pixie".device =
"/dev/disk/by-uuid/f4ae5858-d2d6-4cd1-a054-bf5147a9a928";
fileSystems."/home" =
{ device = "/dev/mapper/pixie";
fileSystems."/home" = {
device = "/dev/mapper/pixie";
fsType = "btrfs";
options = [ "subvol=home" ];
};
fileSystems."/boot/efi" =
{ device = "/dev/disk/by-uuid/B1BB-15DD";
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/B1BB-15DD";
fsType = "vfat";
};
@ -45,7 +45,8 @@
# networking.interfaces.enp4s0.useDHCP = lib.mkDefault true;
# networking.interfaces.veth74f3ffc.useDHCP = lib.mkDefault true;
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.cpu.amd.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
networking.hostName = "pixie"; # Define your hostname.
}

View file

@ -1,39 +1,39 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: let
btrfs_options = [ "compress=zstd:3" "noatime" ];
{ config, lib, pkgs, modulesPath, ... }:
let btrfs_options = [ "compress=zstd:3" "noatime" ];
in {
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.availableKernelModules =
[ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/a242e1fd-6848-4504-909f-ab8b61f97c8e";
fileSystems."/" = {
device = "/dev/disk/by-uuid/a242e1fd-6848-4504-909f-ab8b61f97c8e";
fsType = "btrfs";
options = [ "subvol=@nixos" ] ++ btrfs_options;
};
boot.initrd.luks.devices."main".device = "/dev/disk/by-uuid/9b24d79f-e018-4d70-84a9-5a1b49a6c610";
boot.initrd.luks.devices."main".device =
"/dev/disk/by-uuid/9b24d79f-e018-4d70-84a9-5a1b49a6c610";
fileSystems."/home" =
{ device = "/dev/disk/by-uuid/a242e1fd-6848-4504-909f-ab8b61f97c8e";
fileSystems."/home" = {
device = "/dev/disk/by-uuid/a242e1fd-6848-4504-909f-ab8b61f97c8e";
fsType = "btrfs";
options = [ "subvol=@home" ] ++ btrfs_options;
};
fileSystems."/boot/efi" =
{ device = "/dev/disk/by-uuid/DC3B-5753";
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/DC3B-5753";
fsType = "vfat";
};
fileSystems."/swap" =
{ device = "/dev/disk/by-uuid/a242e1fd-6848-4504-909f-ab8b61f97c8e";
fileSystems."/swap" = {
device = "/dev/disk/by-uuid/a242e1fd-6848-4504-909f-ab8b61f97c8e";
fsType = "btrfs";
options = [ "subvol=@swap" ];
};
@ -51,7 +51,8 @@ in {
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true;
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.cpu.intel.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
networking.hostName = "rainbow"; # Define your hostname.
}

View file

@ -1,4 +1,5 @@
(inputs@{ system, ... }: {pkgs, ...}: {
(inputs@{ system, ... }:
{ pkgs, ... }: {
nixpkgs.overlays = [
inputs.nur.overlay
(import ../scripts)
@ -10,11 +11,9 @@
uservars = import ../user/variables.nix;
dhist = inputs.dhist.packages.${system}.dhist;
mpvpaper = inputs.wegank.packages.${prev.system}.mpvpaper;
alacritty = (prev.unstable.alacritty.overrideAttrs
(old-alacritty: rec {
alacritty = (prev.unstable.alacritty.overrideAttrs (old-alacritty: rec {
src = inputs.alacritty-sixel;
cargoDeps = old-alacritty.cargoDeps.overrideAttrs
(prev.lib.const {
cargoDeps = old-alacritty.cargoDeps.overrideAttrs (prev.lib.const {
inherit src;
outputHash = "sha256-svZ/ySK09m4KVJE5LBLtD7ZEoExGwpFn4UP5tfhGKMc=";
});
@ -34,11 +33,12 @@
cp material-wifi.ttf ${dest}
'';
};
papirus_red = (final.unstable.papirus-icon-theme.override { color = "red"; });
papirus_red =
(final.unstable.papirus-icon-theme.override { color = "red"; });
orchis_theme_compact =
(final.orchis-theme.override { tweaks = [ "compact" "solid" ]; });
nerdfonts_fira_hack =
(final.nerdfonts.override { fonts = [ "FiraCode" "Hack" ]; });
})
];
})
})

View file

@ -2,9 +2,7 @@
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{ config, pkgs, ... }: {
imports = [
./media-packages.nix
];
imports = [ ./media-packages.nix ];
packages.media-packages.enable = true;
# Bootloader.
@ -31,12 +29,12 @@
time.timeZone = "America/Sao_Paulo";
# Select internationalisation properties.
i18n.defaultLocale = "pt_BR.utf8";
# Enable the X11 windowing system.
services.xserver.enable = false;
# Enable the GNOME Desktop Environment.
# services.xserver.displayManager.gdm.enable = true;
# services.xserver.desktopManager.gnome.enable = true;
# services.xserver.displayManager.autologin.user = "lelgenio";
# Configure keymap in X11
services.xserver = {
layout = "us";
@ -53,7 +51,7 @@
## Enable sound with pipewire.
sound.enable = true;
# hardware.pulseaudio.enable = true;
hardware.pulseaudio.enable = false;
services.pipewire = {
enable = true;
wireplumber.enable = true;

16
system/gnome.nix Normal file
View file

@ -0,0 +1,16 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{ config, pkgs, ... }: {
# Enable the X11 windowing system.
services.xserver.enable = true;
# Enable the GNOME Desktop Environment.
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
# services.xserver.displayManager.autologin.user = "lelgenio";
environment.systemPackages = with pkgs;
with gnome; [
gnome-tweaks
dconf-editor
];
}

View file

@ -1,6 +1,5 @@
{ config, pkgs, lib, ... }:
let
cfg = config.packages.media-packages;
let cfg = config.packages.media-packages;
in {
options.packages.media-packages = {
enable = lib.mkEnableOption "media packages";

View file

@ -1,4 +1,8 @@
{ pkgs, ... }: {
# Enable the X11 windowing system.
services.xserver.enable = false;
# enable sway window manager
programs.sway = {
enable = true;

View file

@ -29,9 +29,7 @@ in {
};
};
home.packages = with pkgs; [
tdesktop
];
home.packages = with pkgs; [ tdesktop ];
home.activation = {
install_flatpaks = lib.hm.dag.entryAfter [ "writeBoundary" ] ''

View file

@ -1,5 +1,5 @@
{ config, pkgs, lib, font, ... }:
let inherit (import ./variables.nix) key theme color accent font;
let inherit (import ./variables.nix) desktop;
in {
config = {
programs.firefox = {
@ -16,23 +16,21 @@ in {
main = {
isDefault = true;
settings = {
"devtools.theme" = "dark";
"devtools.theme" = "auto";
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.tabs.inTitlebar" = 0;
"browser.tabs.inTitlebar" = if desktop == "sway" then 0 else 1;
"media.ffmpeg.vaapi.enabled" = true;
"media.ffvpx.enabled" = false;
"media.av1.enabled" = false;
"media.ffvpx.enabled" = true;
"media.av1.enabled" = true;
"gfx.webrender.all" = true;
};
userChrome = ''
userChrome = lib.mkIf (desktop == "sway") ''
#titlebar { display: none !important; }
'';
};
};
};
home.sessionVariables = {
MOZ_ENABLE_WAYLAND = "1";
};
home.sessionVariables = { MOZ_ENABLE_WAYLAND = "1"; };
};
}

View file

@ -1,5 +1,6 @@
{ config, pkgs, lib, inputs, ... }:
let inherit (import ./variables.nix) key theme color accent font;
let
inherit (import ./variables.nix) key theme color accent font;
colors = {
"bg+" = color.bg_light;
@ -21,14 +22,13 @@ in {
enable = true;
fileWidgetCommand = "${pkgs.fd}/bin/fd --type f";
fileWidgetOptions = [ "--preview '${pkgs.bat}/bin/bat --style=numbers --color=always {}'" ];
fileWidgetOptions =
[ "--preview '${pkgs.bat}/bin/bat --style=numbers --color=always {}'" ];
changeDirWidgetCommand = "${pkgs.fd}/bin/fd --type d";
changeDirWidgetOptions = [ "--preview '${pkgs.exa}/bin/exa -T L3 | head -200'" ];
changeDirWidgetOptions =
[ "--preview '${pkgs.exa}/bin/exa -T L3 | head -200'" ];
defaultOptions = [
color_opts
preview_opts
];
defaultOptions = [ color_opts preview_opts ];
};
}

View file

@ -1,5 +1,5 @@
{ config, pkgs, lib, inputs, ... }:
let inherit (import ./variables.nix) key theme color accent font;
let inherit (import ./variables.nix) key theme color accent font desktop;
in {
imports = [
@ -8,7 +8,6 @@ in {
./kakoune.nix
./fish.nix
./firefox.nix
./sway.nix
./hyprland.nix
./alacritty.nix
./git.nix
@ -24,9 +23,9 @@ in {
./bmenu.nix
./fzf.nix
./ranger
./theme.nix
inputs.hyprland.homeManagerModules.default
];
] ++ lib.optional (desktop == "sway") ./sway.nix;
# Home Manager needs a bit of information about you and the
# paths it should manage.
home.username = "lelgenio";
@ -77,14 +76,12 @@ in {
libsForQt5.qtstyleplugins
qt5.qtsvg
## Network
speedtest-cli
nmap
miniupnpc
deluge
## Programming
vscode
rustup

View file

@ -25,6 +25,7 @@ let
fi
'';
in {
imports = [ ./theme.nix ];
config = {
wayland.windowManager.sway = let
mod = "Mod4";

View file

@ -34,7 +34,7 @@ with pkgs.uservars; {
[Appearance]
# color_scheme_path=/nix/store/f07mk0vrm47jxw3y5v99hxncy0w4vcyq-qt5ct-1.5/share/qt5ct/colors/darker.conf
custom_palette=false
icon_theme=${ icon_theme }
icon_theme=${icon_theme}
standard_dialogs=default
style=kvantum-dark
@ -46,18 +46,16 @@ with pkgs.uservars; {
services.xsettingsd = {
enable = true;
settings = {
"Gtk/FontName" = "${ font.interface } ${toString font.size.small }";
"Net/ThemeName" = "${ gtk_theme }";
"Net/IconThemeName" = "${ icon_theme }";
"Gtk/CursorThemeName" = "${ cursor_theme }";
"Gtk/FontName" = "${font.interface} ${toString font.size.small}";
"Net/ThemeName" = "${gtk_theme}";
"Net/IconThemeName" = "${icon_theme}";
"Gtk/CursorThemeName" = "${cursor_theme}";
"Gtk/CursorThemeSize" = 24;
"Net/SoundThemeName" = "freedesktop" ;
"Net/SoundThemeName" = "freedesktop";
};
};
home.sessionVariables = {
QT_QPA_PLATFORMTHEME = "qt5ct";
};
home.sessionVariables = { QT_QPA_PLATFORMTHEME = "qt5ct"; };
home.packages = with pkgs; [
libsForQt5.qt5ct
libsForQt5.qtstyleplugin-kvantum

View file

@ -96,4 +96,5 @@ in rec {
};
dmenu = "bmenu";
desktop = "sway";
}

View file

@ -102,7 +102,8 @@ in {
format-bluetooth-muted = "";
format-muted = "";
format-icons = {
"alsa_output.pci-0000_09_00.4.analog-stereo" = [ " " " 奔" " " ];
"alsa_output.pci-0000_09_00.4.analog-stereo" =
[ " " " 奔" " " ];
headphone = [ " " " 奔" " " ];
handsfree = "";