add regreet

This commit is contained in:
atagen 2023-06-20 15:34:48 +10:00
parent 48ad8a3fdf
commit 16e9c62f76
13 changed files with 406 additions and 303 deletions

View file

@ -1,8 +1,9 @@
# WARN: this file will get overwritten by $ cachix use <name>
{ pkgs, lib, ... }:
let
{
pkgs,
lib,
...
}: let
folder = ./cachix;
toImport = name: value: folder + ("/" + name);
filterCaches = key: value: value == "regular" && lib.hasSuffix ".nix" key;

View file

@ -1,4 +1,3 @@
{
nix = {
settings = {

View file

@ -5,9 +5,9 @@
config,
pkgs,
nix-rice,
nix-std,
...
}:
{
}: {
nixpkgs = {
overlays = [
inputs.nur.overlay
@ -25,11 +25,14 @@
nix = {
registry = lib.mapAttrs (_: value: {flake = value;}) inputs;
settings = {
substituters = ["https://hyprland.cachix.org"];
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
experimental-features = "nix-command flakes";
};
};
imports = [
inputs.hyprland.nixosModules.default
# inputs.declarative-cachix.nixosModules.declarative-cachix
# inputs.helix
];
@ -44,7 +47,7 @@
'';
systemd.services.NetworkManager-wait-online.enable = true; # for some reason nm doesn't enable without this lel
environment.pathsToLink = ["/share/zsh"];
hardware.enableRedistributableFirmware = true;
@ -79,21 +82,75 @@
services.xserver.libinput.enable = true;
services.xserver.displayManager.lightdm.enable = false; # gets installed by default..
programs.hyprland = {
enable = true;
xwayland = {
enable = true;
hidpi = false;
};
nvidiaPatches = true;
};
environment.etc = {
"hyprland_login" = {
enable = true;
text = ''
misc {
disable_hyprland_logo=true
disable_splash_rendering=true
}
monitor=,highrr,auto,1
windowrule=fullscreen,^(regreet)$
windowrule=dimaround,^(regreet)$
bind=SUPER,Return,exec,${lib.getExe pkgs.greetd.regreet}
exec = ${pkgs.dbus}/bin/dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY
exec = ${lib.getExe pkgs.greetd.regreet}
'';
};
};
services.greetd = {
enable = true;
settings = {
default_session = {
command = "${pkgs.greetd.tuigreet}/bin/tuigreet -r -g \"what's good\" --time --sessions ${config.services.xserver.displayManager.sessionData.desktops}/share/wayland-sessions";
# command = "${pkgs.greetd.tuigreet}/bin/tuigreet -r -g \"what's good\" --time --sessions ${config.services.xserver.displayManager.sessionData.desktops}/share/wayland-sessions";
command = "${pkgs.dbus}/bin/dbus-run-session ${lib.getExe pkgs.hyprland} -c /etc/hyprland_login";
user = "greeter";
};
};
};
programs.regreet = with pkgs.rice; {
enable = true;
settings = with lib.strings; {
background = {
path = "${bg.image}";
fit = "Fill";
};
GTK = {
application_prefer_dark_theme = true;
font_name = concatStrings [fonts.sans.name " " (builtins.toString fonts.sans.size)];
icon_theme_name = icons.name;
theme_name = gtk-theme.name;
};
};
};
security.polkit.enable = true;
programs.dconf.enable = true;
xdg.autostart.enable = true;
xdg.portal = {
enable = true;
wlr = {
enable = true;
};
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
];
};
services.resolved = {
enable = true;
@ -118,13 +175,16 @@
programs.zsh.enable = true;
programs.xonsh = {
enable = true;
config = builtins.replaceStrings
["#NEWPATHS"]
[''
'${pkgs.xonsh}/lib/python3.10/site-packages',
'${pkgs.python310Packages.pip}/lib/python3.10/site-packages'
'']
(builtins.readFile ../home/dots/xonshrc);
config =
builtins.replaceStrings
["#NEWPATHS"]
[
''
'${pkgs.xonsh}/lib/python3.10/site-packages',
'${pkgs.python310Packages.pip}/lib/python3.10/site-packages'
''
]
(builtins.readFile ../home/dots/xonshrc);
};
users.defaultUserShell = pkgs.zsh;
@ -154,7 +214,6 @@
cachix
alejandra
];
programs.nix-index-database.comma.enable = true;

View file

@ -8,14 +8,8 @@
modulesPath,
...
}: {
nix.settings = {
substituters = ["https://hyprland.cachix.org" "https://nix-community.cachix.org" ];
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
};
imports = [
./configuration.nix
inputs.hyprland.nixosModules.default
];
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usbcore" "sd_mod"];
@ -77,15 +71,6 @@
};
};
programs.hyprland = {
enable = true;
xwayland = {
enable = true;
hidpi = false;
};
nvidiaPatches = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.beta;
hardware.nvidia.modesetting.enable = true;
@ -101,17 +86,6 @@
};
};
# systemd.services."com.system76.Scheduler" = {
# wantedBy = ["multi-user.target"];
# description = "the system76 process scheduler";
# serviceConfig = {
# Type = "dbus";
# ExecStart = ''${pkgs.system76-scheduler}/bin/system76-scheduler daemon'';
# ExecReload = ''${pkgs.system76-scheduler}/bin/system76-scheduler daemon reload'';
# BusName = "com.system76.Scheduler";
# };
# };
services.dbus.packages = [
pkgs.linuxPackages_xanmod_latest.system76-scheduler
];
@ -131,24 +105,6 @@
hardware.ckb-next.enable = true;
xdg.portal = {
enable = true;
wlr = {
enable = true;
# settings = {
# screencast = {
# output_name = "DP-1";
# max_fps = 60;
# chooser_type = "simple";
# chooser_nvidia = "${pkgs.slurp}/bin/slurp -f %o -or";
# };
# };
};
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
];
};
environment.systemPackages = with pkgs; [
ckb-next
openrgb