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 outputs = {
systemConfig = { modules }: nixpkgs.lib.nixosSystem { nixpkgs,
specialArgs = { inherit inputs; }; home-manager,
modules = modules ++ [ stylix.nixosModules.stylix ]; stylix,
...
} @ inputs: let
systemConfig = {modules}:
nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = modules ++ [stylix.nixosModules.stylix];
}; };
in { in {
nixosConfigurations = { nixosConfigurations = {
desktop = systemConfig { desktop = systemConfig {
modules = [ ./hosts/desktop ]; modules = [./hosts/desktop];
}; };
laptop = systemConfig { laptop = systemConfig {
modules = [ ./hosts/laptop ]; modules = [./hosts/laptop];
}; };
}; };
}; };

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -1,5 +1,4 @@
{ inputs, ... }: {inputs, ...}: {
{
networking.hostName = "desktop"; networking.hostName = "desktop";
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
boot.loader.systemd-boot.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 # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = config,
[ (modulesPath + "/installer/scan/not-detected.nix") lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod"];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/8c81ac04-9d75-4b58-8abe-3dfdd1b9e6ae"; device = "/dev/disk/by-uuid/8c81ac04-9d75-4b58-8abe-3dfdd1b9e6ae";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = fileSystems."/boot" = {
{ device = "/dev/disk/by-uuid/8810-3A12"; device = "/dev/disk/by-uuid/8810-3A12";
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = [ ]; swapDevices = [];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # 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 # (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-original"
"steam" "steam"
"steam-run" "steam-run"

View file

@ -1,5 +1,8 @@
{ inputs, pkgs, ... }:
{ {
inputs,
pkgs,
...
}: {
networking.hostName = "laptop"; networking.hostName = "laptop";
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
boot.loader.systemd-boot.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 # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = config,
[ (modulesPath + "/installer/scan/not-detected.nix") 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.availableKernelModules = ["nvme" "ehci_pci" "xhci_pci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = ["kvm-amd"];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/7bc13c8d-91dd-4022-b4a8-624970b94a78"; device = "/dev/disk/by-uuid/7bc13c8d-91dd-4022-b4a8-624970b94a78";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = fileSystems."/boot" = {
{ device = "/dev/disk/by-uuid/ABA5-ED78"; device = "/dev/disk/by-uuid/ABA5-ED78";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ]; options = ["fmask=0022" "dmask=0022"];
}; };
swapDevices = [ swapDevices = [
{ device = "/swapfile"; } {device = "/swapfile";}
]; ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking

View file

@ -1,8 +1,7 @@
{ ... }: {...}: {
{
systemd.services.micmute = { systemd.services.micmute = {
description = "Set microphone mute and normal mute LEDs to off"; description = "Set microphone mute and normal mute LEDs to off";
wantedBy = [ "multi-user.target" ]; wantedBy = ["multi-user.target"];
serviceConfig = { 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'"; 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"; Type = "oneshot";

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -1,11 +1,10 @@
{ pkgs, ... } : {pkgs, ...}: {
{
systemd = { systemd = {
user.services.polkit-gnome-authentication-agent-1 = { user.services.polkit-gnome-authentication-agent-1 = {
description = "polkit-gnome-authentication-agent-1"; description = "polkit-gnome-authentication-agent-1";
wantedBy = [ "graphical-session.target" ]; wantedBy = ["graphical-session.target"];
wants = [ "graphical-session.target" ]; wants = ["graphical-session.target"];
after = [ "graphical-session.target" ]; after = ["graphical-session.target"];
serviceConfig = { serviceConfig = {
Type = "simple"; Type = "simple";
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"; 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.devmon.enable = true;
services.udisks2.enable = true; services.udisks2.enable = true;
services.gvfs.enable = true; services.gvfs.enable = true;

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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