formate all stuff lol

This commit is contained in:
joy 2024-08-21 09:02:49 +02:00
parent 4bfc0d0e25
commit 25e5a42547
38 changed files with 656 additions and 650 deletions

View file

@ -15,18 +15,24 @@
};
};
outputs = { nixpkgs, home-manager, stylix, ... }@inputs: let
systemConfig = { modules }: nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; };
modules = modules ++ [ stylix.nixosModules.stylix ];
outputs = {
nixpkgs,
home-manager,
stylix,
...
} @ inputs: let
systemConfig = {modules}:
nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = modules ++ [stylix.nixosModules.stylix];
};
in {
nixosConfigurations = {
desktop = systemConfig {
modules = [ ./hosts/desktop ];
modules = [./hosts/desktop];
};
laptop = systemConfig {
modules = [ ./hosts/laptop ];
modules = [./hosts/laptop];
};
};
};

View file

@ -1,7 +1,4 @@
{...}:
{
{...}: {
programs.ags = {
enable = true;
configDir = ./bar;

View file

@ -1,6 +1,4 @@
{ ... }:
{
{...}: {
programs.alacritty = {
enable = true;
settings = {

View file

@ -1,7 +1,4 @@
{ inputs, ... }:
{
{inputs, ...}: {
imports = [
./zsh
./gtk

View file

@ -1,7 +1,4 @@
{ inputs, ... }:
{
{inputs, ...}: {
imports = [
./user.nix
];
@ -11,39 +8,91 @@
profiles.joy = {
search.engines = {
"4get" = {
urls = [{
urls = [
{
template = "https://4get.joygnu.org/web";
params = [
{ name = "s"; value = "{searchTerms}"; }
{
name = "s";
value = "{searchTerms}";
}
];
}];
definedAliases = [ "@4get" ];
}
];
definedAliases = ["@4get"];
};
};
search.force = true;
search.default = "4get";
bookmarks = [{
bookmarks = [
{
name = "Nix sites";
toolbar = true;
bookmarks = [
{ name = "Packages"; url = "https://search.nixos.org/packages?channel=unstable"; }
{ name = "Homemanager"; url = "https://nix-community.github.io/home-manager/options.xhtml"; }
{ name = "Stylix"; url = "https://stylix.danth.me/options/nixos.html"; }
{ name = "JOYGNU"; url = "https://joygnu.org/"; }
{ name = "Mail"; url = "https://mail.joygnu.org/"; }
{ name = "Server"; url = "https://avoro.eu/cp/clientarea.php?action=productdetails&id=27920"; }
{ name = "Domain"; url = "https://registrar.epik.com/domain-management/host-records"; }
{ name = "Translate"; url = "https://simplytranslate.org/"; }
{ name = "Syncthing"; url = "http://localhost:8384/"; }
{ name = "GitHub"; url = "https://github.com/"; }
{ name = "Codeberg"; url = "https://codeberg.org/"; }
{ name = "Zophar's Domain"; url = "https://www.zophar.net/music"; }
{ name = "Hyprland"; url = "https://wiki.hyprland.org/"; }
{ name = "Monkeytype"; url = "https://monkeytype.com/"; }
{ name = "piped"; url = "https://piped.video/feed/"; }
{
name = "Packages";
url = "https://search.nixos.org/packages?channel=unstable";
}
{
name = "Homemanager";
url = "https://nix-community.github.io/home-manager/options.xhtml";
}
{
name = "Stylix";
url = "https://stylix.danth.me/options/nixos.html";
}
{
name = "JOYGNU";
url = "https://joygnu.org/";
}
{
name = "Mail";
url = "https://mail.joygnu.org/";
}
{
name = "Server";
url = "https://avoro.eu/cp/clientarea.php?action=productdetails&id=27920";
}
{
name = "Domain";
url = "https://registrar.epik.com/domain-management/host-records";
}
{
name = "Translate";
url = "https://simplytranslate.org/";
}
{
name = "Syncthing";
url = "http://localhost:8384/";
}
{
name = "GitHub";
url = "https://github.com/";
}
{
name = "Codeberg";
url = "https://codeberg.org/";
}
{
name = "Zophar's Domain";
url = "https://www.zophar.net/music";
}
{
name = "Hyprland";
url = "https://wiki.hyprland.org/";
}
{
name = "Monkeytype";
url = "https://monkeytype.com/";
}
{
name = "piped";
url = "https://piped.video/feed/";
}
];
}
];
}];
extensions = with inputs.firefox-addons.packages."x86_64-linux"; [
ublock-origin
@ -65,8 +114,7 @@
"browser.shell.defaultBrowserCheckCount" = 1;
"privacy.trackingprotection.enabled" = true;
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.uiCustomization.state" =
''
"browser.uiCustomization.state" = ''
{
"placements": {
"widget-overflow-fixed-list": [],
@ -110,9 +158,7 @@
"newElementCount": 4
}
'';
};
};
};
}

View file

@ -1,384 +1,380 @@
{ ... } :
{
{...}: {
programs.firefox = {
enable = true;
profiles.joy = {
userChrome = ''
/*================== Gruvbox Theme for Firefox ==================
Author: kmason
Based on the color scheme of calvinchd's Gruvbox Dark Firefox Theme - https://gitlab.com/calvinchd/gruvbox-dark-firefox-theme
*/
@namespace xul "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
/*================== Gruvbox Theme for Firefox ==================
Author: kmason
Based on the color scheme of calvinchd's Gruvbox Dark Firefox Theme - https://gitlab.com/calvinchd/gruvbox-dark-firefox-theme
*/
@namespace xul "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
:root {
--background: #1d2021;
--secondary: #282828;
--foreground: #EBDBB2;
:root {
--background: #1d2021;
--secondary: #282828;
--foreground: #EBDBB2;
--orange-highlight: #fe8019;
--sound-border: #68217A;
--orange-highlight: #fe8019;
--sound-border: #68217A;
--separator: #665e54;
--separator: #665e54;
--toolbar-bgcolor: var(--secondary) !important;
--toolbar-bgcolor: var(--secondary) !important;
--tab: var(--background);
--tab-btn: var(--tab-inactive);
--tab-inactive: var(--secondary);
--tab-btn-inactive: var(--tab-inactive);
--tab-hover: #32302f;
--tab-btn-hover: #3C3836;
--toolbar-btn-hover: #49463f;
--tab: var(--background);
--tab-btn: var(--tab-inactive);
--tab-inactive: var(--secondary);
--tab-btn-inactive: var(--tab-inactive);
--tab-hover: #32302f;
--tab-btn-hover: #3C3836;
--toolbar-btn-hover: #49463f;
--url-bar: #3C3836;
--url-focus: #504945;
--url-bar-item-hover: #6a6257;
--url-bar: #3C3836;
--url-focus: #504945;
--url-bar-item-hover: #6a6257;
--sidebar: #3C3836;
--sidebar-button-hover: #5A544B;
--sidebar-highlight: #458588;
}
--sidebar: #3C3836;
--sidebar-button-hover: #5A544B;
--sidebar-highlight: #458588;
}
/*
SEARCH AND POPUPS/MENUS
*/
/*
SEARCH AND POPUPS/MENUS
*/
.panel-arrowcontainer {
.panel-arrowcontainer {
background-color: var(--secondary) !important;
}
}
#PopupAutoComplete,
#PopupSearchAutoComplete
{
#PopupAutoComplete,
#PopupSearchAutoComplete
{
background-color: var(--url-focus) !important;
color: var(--foreground) !important;
}
}
panelview {
panelview {
background-color: var(--sidebar) !important;
color: var(--foreground) !important;
}
}
panelview toolbarbutton.subviewbutton:hover {
panelview toolbarbutton.subviewbutton:hover {
background-color: var(--sidebar-button-hover) !important;
}
}
panel[type="autocomplete-richlistbox"] {
panel[type="autocomplete-richlistbox"] {
--panel-background: none !important;
border-radius: 4px !important;
color: var(--foreground) !important;
}
}
/*
/*
_____ ___ ___ _ ___ _ ___
|_ _/ _ \ / _ \| | | _ ) / \ | _ \
|_ _/ _ \ / _ \| | | _ ) / \ | _ \
| || (_) | (_) | |__| _ \/ = \| /
|_| \___/ \___/|____|___/_/ \_\_|\_\
*/
*/
toolbarseparator,
menuseparator
{
toolbarseparator,
menuseparator
{
border-color: var(--separator) !important;
border-image: none !important;
}
}
toolbar {
toolbar {
background-color: var(--secondary);
}
}
toolbar#TabsToolbar {
toolbar#TabsToolbar {
background-color: var(--background);
}
toolbar#TabsToolbar:-moz-window-inactive {
}
toolbar#TabsToolbar:-moz-window-inactive {
background-color: var(--toolbar-bgcolor) !important;
}
}
#titlebar,
#titlebar-spacer,
#titlebar-buttonbox-container
{
#titlebar,
#titlebar-spacer,
#titlebar-buttonbox-container
{
background-color: var(--background) !important;
border: none !important;
}
}
#navigator-toolbox {
#navigator-toolbox {
--tabs-border-color: var(--orange-highlight) !important;
}
}
/* Remove border under navbar */
#navigator-toolbox::after {
/* Remove border under navbar */
#navigator-toolbox::after {
border-bottom: 0px !important;
}
}
/* remove some borders */
#navigator-toolbox {
/* remove some borders */
#navigator-toolbox {
border: none !important;
}
}
/*
/*
_ _ ___ _ ___ _ ___
| | | | _ \| | | _ ) / \ | _ \
| |_| | /| |__| _ \/ = \| /
| | | | _ \| | | _ ) / \ | _ \
| |_| | /| |__| _ \/ = \| /
\___/|_|\_\____|___/_/ \_\_|\_\
*/
*/
#urlbar,
#searchbar
{
#urlbar,
#searchbar
{
box-shadow: none !important;
border: none !important;
border-radius: 4px;
color : var(--foreground) !important;
background-color: var(--url-bar) !important;
--autocomplete-popup-separator-color: var(--separator) !important;
}
}
#urlbar-input,
#urlbar-input-container
{
#urlbar-input,
#urlbar-input-container
{
color: var(--foreground) !important;
background-color: var(--url-bar) !important;
}
}
#urlbar:not([open]) #urlbar-input-container:focus-within,
#searchbar:focus-within
{
#urlbar:not([open]) #urlbar-input-container:focus-within,
#searchbar:focus-within
{
border: 2px solid var(--orange-highlight) !important;
}
}
#urlbar:focus-within,
#urlbar[open],
#urlbar[open] #urlbar-input-container,
#urlbar[open] #urlbar-input,
#urlbar-input-container:focus-within,
#urlbar-input:focus,
#urlbar-background,
.urlbarView,
#searchbar:focus-within,
menupop
{
#urlbar:focus-within,
#urlbar[open],
#urlbar[open] #urlbar-input-container,
#urlbar[open] #urlbar-input,
#urlbar-input-container:focus-within,
#urlbar-input:focus,
#urlbar-background,
.urlbarView,
#searchbar:focus-within,
menupop
{
background-color: var(--url-focus) !important;
}
#searchbar:focus-within {
}
#searchbar:focus-within {
outline: none !important;
}
}
:is(panel, menupopup)::part(content) {
:is(panel, menupopup)::part(content) {
background: none !important;
}
}
.urlbarView button:hover,
#searchbar button:hover,
.urlbarView-row:hover .urlbarView-row-inner,
.search-autocomplete-richlistbox-popup .autocomplete-richlistitem:hover
{
.urlbarView button:hover,
#searchbar button:hover,
.urlbarView-row:hover .urlbarView-row-inner,
.search-autocomplete-richlistbox-popup .autocomplete-richlistitem:hover
{
background-color: var(--url-bar-item-hover) !important;
}
}
.urlbarView-row[type="switchtab"] > span{
.urlbarView-row[type="switchtab"] > span{
color: var(--orange-highlight) !important;
}
}
#PopupSearchAutoComplete .autocomplete-richlistitem[selected],
.searchbar-engine-one-off-item[selected],
.urlbarView-row[selected],
.urlbarView-row[aria-selected="true"],
.urlbarView-row:not([type="tip"], [type="dynamic"])[selected] > .urlbarView-row-inner,
.urlbarView-row-inner[selected]
{
#PopupSearchAutoComplete .autocomplete-richlistitem[selected],
.searchbar-engine-one-off-item[selected],
.urlbarView-row[selected],
.urlbarView-row[aria-selected="true"],
.urlbarView-row:not([type="tip"], [type="dynamic"])[selected] > .urlbarView-row-inner,
.urlbarView-row-inner[selected]
{
color: var(--foreground) !important;
background-color: var(--sidebar-highlight) !important;
border-radius: 4px !important;
}
}
/*
BOOKMARKS BAR
*/
/*
BOOKMARKS BAR
*/
#PersonalToolbar {
#PersonalToolbar {
background-color: var(--secondary) !important;
}
}
/*
/*
_____ _ ___ ___
|_ _/ \ | _ ) __|
| |/ = \| _ \__ \
|_/_/ \_\___/___/
*/
.tab-background[selected="true"] {
*/
.tab-background[selected="true"] {
background-color: transparent !important;
background-image: none !important;
}
.tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected="true"]):not([multiselected]){
}
.tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected="true"]):not([multiselected]){
background-color: transparent !important;
}
}
.tabbrowser-tab[soundplaying="true"] {
.tabbrowser-tab[soundplaying="true"] {
--lwt-tab-line-color: var(--sound-border) !important;
}
.tab-content[selected="true"] {
}
.tab-content[selected="true"] {
border-color: var(--orange-highlight) !important;
--sound-border: var(--orange-highlight) !important;
}
.tab-text {
}
.tab-text {
color: var(--foreground);
}
}
tab,
#tabbrowser-tabs
{
tab,
#tabbrowser-tabs
{
background-color: var(--background) !important;
color : var(--foreground) !important;
}
tab:-moz-window-inactive,
#tabbrowser-tabs:-moz-window-inactive,
#nav-bar-customization-target
{
}
tab:-moz-window-inactive,
#tabbrowser-tabs:-moz-window-inactive,
#nav-bar-customization-target
{
background-color: var(--secondary) !important;
}
}
.tabbrowser-tab[selected]{
.tabbrowser-tab[selected]{
opacity: 1;
}
}
.tab-loading-burst {
.tab-loading-burst {
background-color: inherit;
}
}
.tab-content
{
.tab-content
{
border-radius: 4px;
margin: 5px 0px 5px 0px !important;
border: 1px solid transparent !important;
}
.tab-content[selected="true"]
{
}
.tab-content[selected="true"]
{
background-color: var(--secondary) !important;
color : var(--foreground) !important;
border: 1px solid var(--orange-highlight) !important;
}
.tab-content:not([selected="true"]):hover {
}
.tab-content:not([selected="true"]):hover {
background-color: var(--tab-hover) !important;
}
}
/*
/*
___ _____ ___ _ ___
| _ )_ _| \| |/ __|
| _ \ | | | |\ | |\__ \
|___/ |_| |_| \__|/___/
*/
*/
/*
Toolbar buttons
*/
/*
Toolbar buttons
*/
toolbarbutton {
toolbarbutton {
fill: var(--foreground) !important;
background-color: transparent !important;
}
}
/*
TAB BAR BUTTONS
*/
/*
TAB BAR BUTTONS
*/
#TabsToolbar toolbarbutton {
#TabsToolbar toolbarbutton {
border-radius: 4px;
border: 1px solid transparent !important;
}
#TabsToolbar toolbarbutton:-moz-window-inactive {
}
#TabsToolbar toolbarbutton:-moz-window-inactive {
opacity: 0.7 !important;
}
}
#alltabs-button > .toolbarbutton-badge-stack,
#tabs-newtab-button > .toolbarbutton-icon {
#alltabs-button > .toolbarbutton-badge-stack,
#tabs-newtab-button > .toolbarbutton-icon {
background-image: none;
border-radius: 6px;
}
#alltabs-button:hover > .toolbarbutton-badge-stack,
#tabs-newtab-button:hover > .toolbarbutton-icon {
}
#alltabs-button:hover > .toolbarbutton-badge-stack,
#tabs-newtab-button:hover > .toolbarbutton-icon {
background-color: var(--tab-btn-hover) !important;
}
}
/* Firefox View button */
#TabsToolbar #firefox-view-button > .toolbarbutton-icon
{
/* Firefox View button */
#TabsToolbar #firefox-view-button > .toolbarbutton-icon
{
background-image: none !important;
border-radius: 4px;
}
#TabsToolbar #firefox-view-button[open] > .toolbarbutton-icon
{
}
#TabsToolbar #firefox-view-button[open] > .toolbarbutton-icon
{
background-color: var(--secondary) !important;
color : var(--foreground) !important;
padding: 9px !important;
border: 1px solid var(--orange-highlight) !important;
}
#TabsToolbar #firefox-view-button:not([open]):hover > .toolbarbutton-icon {
}
#TabsToolbar #firefox-view-button:not([open]):hover > .toolbarbutton-icon {
background-color: var(--tab-hover) !important;
}
}
/*
MIDDLE BAR (url bar) BUTTONS
*/
/*
MIDDLE BAR (url bar) BUTTONS
*/
#nav-bar toolbarbutton > .toolbarbutton-icon,
#nav-bar toolbarbutton > .toolbarbutton-badge-stack {
#nav-bar toolbarbutton > .toolbarbutton-icon,
#nav-bar toolbarbutton > .toolbarbutton-badge-stack {
border-radius: 6px;
}
#nav-bar toolbarbutton:hover > .toolbarbutton-icon,
#nav-bar toolbarbutton:hover > .toolbarbutton-badge-stack {
}
#nav-bar toolbarbutton:hover > .toolbarbutton-icon,
#nav-bar toolbarbutton:hover > .toolbarbutton-badge-stack {
background-color: var(--toolbar-btn-hover) !important;
}
}
#back-button {
#back-button {
padding-right: 2px !important;
padding-left: 2px !important;
margin-left: 6px !important;
}
}
/* Hamburger Menu */
#PanelUI-menu-button {
/* Hamburger Menu */
#PanelUI-menu-button {
background-color: var(--secondary) !important;
padding-right: 2px !important;
margin-right: 6px !important;
}
}
/*
BOOKMARK BUTTONS
*/
#PersonalToolbar toolbarbutton {
/*
BOOKMARK BUTTONS
*/
#PersonalToolbar toolbarbutton {
margin: 3px 0px 3px 3px !important;
border-radius: 4px;
}
#PersonalToolbar toolbarbutton:hover {
}
#PersonalToolbar toolbarbutton:hover {
background-color: var(--toolbar-btn-hover) !important;
}
}
'';
userContent = ''
:root {
:root {
--background: #1d2021;
--secondary: #282828;
--newtab-body: #32302f;
--foreground: #EBDBB2;
}
}
@-moz-document url-prefix("about:"), url-prefix("about:newtab"), url-prefix("about:home") {
@-moz-document url-prefix("about:"), url-prefix("about:newtab"), url-prefix("about:home") {
html, body {
color: var(--foreground) !important;
background-color: var(--newtab-body) !important;
}
}
}
'';
};
};
};
};
}

View file

@ -1,4 +1,4 @@
{ ...}: {
{...}: {
programs.git = {
enable = true;
userEmail = "mail@joygnu.org";

View file

@ -1,9 +1,6 @@
{ pkgs, ... }:
let
{pkgs, ...}: let
gruvboxPlus = import ./gruvbox-plus.nix {inherit pkgs;};
in
{
in {
home.file = {
".local/share/icons/GruvboxPlus".source = "${gruvboxPlus}";
};

View file

@ -1,9 +1,7 @@
{pkgs}:
let
{pkgs}: let
link = "https://github.com/SylEleuth/gruvbox-plus-icon-pack/releases/download/v3.1/gruvbox-plus-icon-pack-3.1.zip";
in
pkgs.stdenv.mkDerivation
{
name = "gruvbox-plus";

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs.helix = {
enable = true;
defaultEditor = true;

View file

@ -1,5 +1,4 @@
{ ... }:
{
{...}: {
services.hypridle = {
enable = true;
settings = {

View file

@ -1,5 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
home.packages = with pkgs; [
rofi-wayland
pwvucontrol
@ -34,7 +33,6 @@
"NIXOS_OZONE_WL = 1"
];
xwayland = {
force_zero_scaling = true;
};
@ -57,6 +55,7 @@
"float,title:^(Bluetooth)(.*)$"
"float,title:^(Clocks)(.*)$"
"float,title:^(Network Connections)(.*)$"
# "opacity 0.3, ^(alacritty)$"
];
gestures = {
@ -66,7 +65,6 @@
};
bind = [
# launch Apps
"$mod,TAB, exec, alacritty"
"$mod, E, exec, nemo"
@ -141,7 +139,6 @@
"$mod+Shift, 8, movetoworkspace, 8"
"$mod+Shift, 9, movetoworkspace, 9"
"$mod+Shift, 0, movetoworkspace, 10"
];
bindm = [
@ -166,7 +163,7 @@
layout = "master";
};
misc ={
misc = {
disable_hyprland_logo = true;
disable_splash_rendering = true;
};
@ -182,12 +179,9 @@
};
device = {
name= "at-translated-set-2-keyboard";
name = "at-translated-set-2-keyboard";
repeat_rate = "50";
};
};
};
}

View file

@ -1,6 +1,4 @@
{ lib, ... }:
{
{lib, ...}: {
home = {
username = "joy";
homeDirectory = "/home/joy";

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
# programs.neomutt = {
# enable = true;
# sidebar.enable = true;

View file

@ -1,5 +1,4 @@
{ ... }:
{
{...}: {
programs.newsboat = {
enable = true;
browser = "firefox";

View file

@ -1,6 +1,8 @@
{ pkgs, lib, ... }:
{
pkgs,
lib,
...
}: {
programs.rofi = {
enable = true;
package = pkgs.rofi-wayland;

View file

@ -1,6 +1,4 @@
{ pkgs, ... } :
{
{pkgs, ...}: {
programs.zsh = {
enable = true;
syntaxHighlighting.enable = true;
@ -37,6 +35,5 @@
history.size = 1000000;
history.path = ".config/zsh/history";
};
}

View file

@ -1,5 +1,4 @@
{ inputs, ... }:
{
{inputs, ...}: {
networking.hostName = "desktop";
networking.networkmanager.enable = true;
boot.loader.systemd-boot.enable = true;

View file

@ -1,29 +1,33 @@
# 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, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/8c81ac04-9d75-4b58-8abe-3dfdd1b9e6ae";
fileSystems."/" = {
device = "/dev/disk/by-uuid/8c81ac04-9d75-4b58-8abe-3dfdd1b9e6ae";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/8810-3A12";
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/8810-3A12";
fsType = "vfat";
};
swapDevices = [ ];
swapDevices = [];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -1,6 +1,10 @@
{ pkgs, lib, ... }:
{
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
pkgs,
lib,
...
}: {
nixpkgs.config.allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [
"steam-original"
"steam"
"steam-run"

View file

@ -1,5 +1,8 @@
{ inputs, pkgs, ... }:
{
inputs,
pkgs,
...
}: {
networking.hostName = "laptop";
networking.networkmanager.enable = true;
boot.loader.systemd-boot.enable = true;

View file

@ -1,31 +1,35 @@
# 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, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "ehci_pci" "xhci_pci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
boot.initrd.availableKernelModules = ["nvme" "ehci_pci" "xhci_pci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
boot.initrd.kernelModules = [];
boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/7bc13c8d-91dd-4022-b4a8-624970b94a78";
fileSystems."/" = {
device = "/dev/disk/by-uuid/7bc13c8d-91dd-4022-b4a8-624970b94a78";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/ABA5-ED78";
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/ABA5-ED78";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
options = ["fmask=0022" "dmask=0022"];
};
swapDevices = [
{ device = "/swapfile"; }
{device = "/swapfile";}
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking

View file

@ -1,8 +1,7 @@
{ ... }:
{
{...}: {
systemd.services.micmute = {
description = "Set microphone mute and normal mute LEDs to off";
wantedBy = [ "multi-user.target" ];
wantedBy = ["multi-user.target"];
serviceConfig = {
ExecStart = "/bin/sh -c 'echo 0 | tee /sys/class/leds/platform::micmute/brightness > /dev/null; echo 0 | tee /sys/class/leds/platform::mute/brightness > /dev/null'";
Type = "oneshot";

View file

@ -1,6 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
boot.binfmt.registrations.appimage = {
wrapInterpreterInShell = false;
interpreter = "${pkgs.appimage-run}/bin/appimage-run";

View file

@ -1,6 +1,4 @@
{ ... }:
{
{...}: {
services.blueman.enable = true;
hardware.bluetooth.enable = true;
}

View file

@ -1,8 +1,6 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
fonts.packages = with pkgs; [
font-awesome
(nerdfonts.override { fonts = [ "FiraCode" ]; })
(nerdfonts.override {fonts = ["FiraCode"];})
];
}

View file

@ -1,7 +1,4 @@
{ ... }:
{
{...}: {
services.xserver.enable = true;
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
@ -11,5 +8,4 @@
systemd.services."getty@tty1".enable = false;
systemd.services."autovt@tty1".enable = false;
}

View file

@ -1,6 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
services.pcscd.enable = true;
programs.gnupg.agent = {
enable = true;

View file

@ -1,6 +1,8 @@
{ inputs, pkgs, ... }:
{
inputs,
pkgs,
...
}: {
home-manager = {
extraSpecialArgs = {inherit inputs;};
users = {
@ -11,7 +13,7 @@
users.users.joy = {
isNormalUser = true;
description = "joy";
extraGroups = [ "wheel" "docker" ];
extraGroups = ["wheel" "docker"];
};
virtualisation.docker.rootless.enable = true;
@ -20,7 +22,7 @@
programs.hyprland.enable = true;
programs.zsh.enable = true;
users.defaultUserShell = pkgs.zsh;
nix.settings.experimental-features = [ "nix-command" "flakes"];
nix.settings.experimental-features = ["nix-command" "flakes"];
programs.nix-ld.enable = true;
services.printing.enable = true;
time.timeZone = "Europe/Zurich";

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
#hackerman
fastfetch

View file

@ -1,11 +1,10 @@
{ pkgs, ... } :
{
{pkgs, ...}: {
systemd = {
user.services.polkit-gnome-authentication-agent-1 = {
description = "polkit-gnome-authentication-agent-1";
wantedBy = [ "graphical-session.target" ];
wants = [ "graphical-session.target" ];
after = [ "graphical-session.target" ];
wantedBy = ["graphical-session.target"];
wants = ["graphical-session.target"];
after = ["graphical-session.target"];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
@ -16,4 +15,3 @@
};
};
}

View file

@ -1,6 +1,4 @@
{ ... }:
{
{...}: {
services.devmon.enable = true;
services.udisks2.enable = true;
services.gvfs.enable = true;

View file

@ -1,6 +1,4 @@
{ ... }:
{
{...}: {
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {

View file

@ -1,5 +1,4 @@
{ ... }:
{
{...}: {
services.openssh = {
enable = true;
settings = {

View file

@ -1,6 +1,4 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
stylix = {
enable = true;

View file

@ -1,6 +1,4 @@
{ ... }:
{
{...}: {
services = {
syncthing = {
enable = true;

View file

@ -1,7 +1,4 @@
{ inputs, ... }:
{
{inputs, ...}: {
system.autoUpgrade = {
enable = true;
flake = inputs.self.outPath;
@ -13,5 +10,4 @@
dates = "02:00";
randomizedDelaySec = "45min";
};
}

View file

@ -1,15 +1,13 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs.dconf.enable = true;
users.users.joy.extraGroups = [ "libvirtd" ];
users.users.joy.extraGroups = ["libvirtd"];
environment.systemPackages = with pkgs; [
virt-manager
virt-viewer
spice spice-gtk
spice
spice-gtk
spice-protocol
win-virtio
win-spice
@ -23,11 +21,10 @@
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
ovmf.packages = [pkgs.OVMFFull.fd];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
}