formate all stuff lol

This commit is contained in:
joygnu 2024-08-21 09:02:49 +02:00
parent 49ade3edf5
commit 61deb8951b
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
@ -18,4 +15,4 @@
./newsboat
inputs.ags.homeManagerModules.default
];
}
}

View file

@ -1,50 +1,99 @@
{ inputs, ... }:
{
{inputs, ...}: {
imports = [
./user.nix
];
programs.firefox = {
enable = true;
profiles.joy = {
search.engines = {
"4get" = {
urls = [{
template = "https://4get.joygnu.org/web";
params = [
{ name = "s"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@4get" ];
urls = [
{
template = "https://4get.joygnu.org/web";
params = [
{
name = "s";
value = "{searchTerms}";
}
];
}
];
definedAliases = ["@4get"];
};
};
search.force = true;
search.default = "4get";
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/"; }
];
}];
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/";
}
];
}
];
extensions = with inputs.firefox-addons.packages."x86_64-linux"; [
ublock-origin
darkreader
@ -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": [],
@ -109,10 +157,8 @@
"currentVersion": 18,
"newElementCount": 4
}
'';
'';
};
};
};
}

View file

@ -1,384 +1,380 @@
{ ... } :
{
programs.firefox = {
enable = true;
profiles.joy = {
{...}: {
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 {
background-color: var(--secondary) !important;
}
.panel-arrowcontainer {
background-color: var(--secondary) !important;
}
#PopupAutoComplete,
#PopupSearchAutoComplete
{
background-color: var(--url-focus) !important;
color: var(--foreground) !important;
}
#PopupAutoComplete,
#PopupSearchAutoComplete
{
background-color: var(--url-focus) !important;
color: var(--foreground) !important;
}
panelview {
background-color: var(--sidebar) !important;
color: var(--foreground) !important;
}
panelview {
background-color: var(--sidebar) !important;
color: var(--foreground) !important;
}
panelview toolbarbutton.subviewbutton:hover {
background-color: var(--sidebar-button-hover) !important;
}
panelview toolbarbutton.subviewbutton:hover {
background-color: var(--sidebar-button-hover) !important;
}
panel[type="autocomplete-richlistbox"] {
--panel-background: none !important;
border-radius: 4px !important;
color: var(--foreground) !important;
}
panel[type="autocomplete-richlistbox"] {
--panel-background: none !important;
border-radius: 4px !important;
color: var(--foreground) !important;
}
/*
_____ ___ ___ _ ___ _ ___
|_ _/ _ \ / _ \| | | _ ) / \ | _ \
| || (_) | (_) | |__| _ \/ = \| /
|_| \___/ \___/|____|___/_/ \_\_|\_\
/*
_____ ___ ___ _ ___ _ ___
|_ _/ _ \ / _ \| | | _ ) / \ | _ \
| || (_) | (_) | |__| _ \/ = \| /
|_| \___/ \___/|____|___/_/ \_\_|\_\
*/
*/
toolbarseparator,
menuseparator
{
border-color: var(--separator) !important;
border-image: none !important;
}
toolbarseparator,
menuseparator
{
border-color: var(--separator) !important;
border-image: none !important;
}
toolbar {
background-color: var(--secondary);
}
toolbar {
background-color: var(--secondary);
}
toolbar#TabsToolbar {
background-color: var(--background);
}
toolbar#TabsToolbar:-moz-window-inactive {
background-color: var(--toolbar-bgcolor) !important;
}
toolbar#TabsToolbar {
background-color: var(--background);
}
toolbar#TabsToolbar:-moz-window-inactive {
background-color: var(--toolbar-bgcolor) !important;
}
#titlebar,
#titlebar-spacer,
#titlebar-buttonbox-container
{
background-color: var(--background) !important;
border: none !important;
}
#titlebar,
#titlebar-spacer,
#titlebar-buttonbox-container
{
background-color: var(--background) !important;
border: none !important;
}
#navigator-toolbox {
--tabs-border-color: var(--orange-highlight) !important;
}
#navigator-toolbox {
--tabs-border-color: var(--orange-highlight) !important;
}
/* Remove border under navbar */
#navigator-toolbox::after {
border-bottom: 0px !important;
}
/* Remove border under navbar */
#navigator-toolbox::after {
border-bottom: 0px !important;
}
/* remove some borders */
#navigator-toolbox {
border: none !important;
}
/* remove some borders */
#navigator-toolbox {
border: none !important;
}
/*
_ _ ___ _ ___ _ ___
| | | | _ \| | | _ ) / \ | _ \
| |_| | /| |__| _ \/ = \| /
\___/|_|\_\____|___/_/ \_\_|\_\
/*
_ _ ___ _ ___ _ ___
| | | | _ \| | | _ ) / \ | _ \
| |_| | /| |__| _ \/ = \| /
\___/|_|\_\____|___/_/ \_\_|\_\
*/
*/
#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,
#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
{
color: var(--foreground) !important;
background-color: var(--url-bar) !important;
}
#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
{
border: 2px solid var(--orange-highlight) !important;
}
#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
{
background-color: var(--url-focus) !important;
}
#searchbar:focus-within {
outline: none !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
{
background-color: var(--url-focus) !important;
}
#searchbar:focus-within {
outline: none !important;
}
:is(panel, menupopup)::part(content) {
background: none !important;
}
: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
{
background-color: var(--url-bar-item-hover) !important;
}
.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{
color: var(--orange-highlight) !important;
}
.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]
{
color: var(--foreground) !important;
background-color: var(--sidebar-highlight) !important;
border-radius: 4px !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]
{
color: var(--foreground) !important;
background-color: var(--sidebar-highlight) !important;
border-radius: 4px !important;
}
/*
BOOKMARKS BAR
*/
/*
BOOKMARKS BAR
*/
#PersonalToolbar {
background-color: var(--secondary) !important;
}
#PersonalToolbar {
background-color: var(--secondary) !important;
}
/*
_____ _ ___ ___
|_ _/ \ | _ ) __|
| |/ = \| _ \__ \
|_/_/ \_\___/___/
/*
_____ _ ___ ___
|_ _/ \ | _ ) __|
| |/ = \| _ \__ \
|_/_/ \_\___/___/
*/
.tab-background[selected="true"] {
background-color: transparent !important;
background-image: none !important;
}
.tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected="true"]):not([multiselected]){
background-color: transparent !important;
}
*/
.tab-background[selected="true"] {
background-color: transparent !important;
background-image: none !important;
}
.tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected="true"]):not([multiselected]){
background-color: transparent !important;
}
.tabbrowser-tab[soundplaying="true"] {
--lwt-tab-line-color: var(--sound-border) !important;
}
.tab-content[selected="true"] {
border-color: var(--orange-highlight) !important;
--sound-border: var(--orange-highlight) !important;
}
.tab-text {
color: var(--foreground);
}
.tabbrowser-tab[soundplaying="true"] {
--lwt-tab-line-color: var(--sound-border) !important;
}
.tab-content[selected="true"] {
border-color: var(--orange-highlight) !important;
--sound-border: var(--orange-highlight) !important;
}
.tab-text {
color: var(--foreground);
}
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
{
background-color: var(--secondary) !important;
}
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
{
background-color: var(--secondary) !important;
}
.tabbrowser-tab[selected]{
opacity: 1;
}
.tabbrowser-tab[selected]{
opacity: 1;
}
.tab-loading-burst {
background-color: inherit;
}
.tab-loading-burst {
background-color: inherit;
}
.tab-content
{
border-radius: 4px;
margin: 5px 0px 5px 0px !important;
border: 1px solid transparent !important;
}
.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 {
background-color: var(--tab-hover) !important;
}
.tab-content
{
border-radius: 4px;
margin: 5px 0px 5px 0px !important;
border: 1px solid transparent !important;
}
.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 {
background-color: var(--tab-hover) !important;
}
/*
___ _____ ___ _ ___
| _ )_ _| \| |/ __|
| _ \ | | | |\ | |\__ \
|___/ |_| |_| \__|/___/
/*
___ _____ ___ _ ___
| _ )_ _| \| |/ __|
| _ \ | | | |\ | |\__ \
|___/ |_| |_| \__|/___/
*/
*/
/*
Toolbar buttons
*/
/*
Toolbar buttons
*/
toolbarbutton {
fill: var(--foreground) !important;
background-color: transparent !important;
}
toolbarbutton {
fill: var(--foreground) !important;
background-color: transparent !important;
}
/*
TAB BAR BUTTONS
*/
/*
TAB BAR BUTTONS
*/
#TabsToolbar toolbarbutton {
border-radius: 4px;
border: 1px solid transparent !important;
}
#TabsToolbar toolbarbutton:-moz-window-inactive {
opacity: 0.7 !important;
}
#TabsToolbar toolbarbutton {
border-radius: 4px;
border: 1px solid transparent !important;
}
#TabsToolbar toolbarbutton:-moz-window-inactive {
opacity: 0.7 !important;
}
#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 {
background-color: var(--tab-btn-hover) !important;
}
#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 {
background-color: var(--tab-btn-hover) !important;
}
/* Firefox View button */
#TabsToolbar #firefox-view-button > .toolbarbutton-icon
{
background-image: none !important;
border-radius: 4px;
}
#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 {
background-color: var(--tab-hover) !important;
}
/* Firefox View button */
#TabsToolbar #firefox-view-button > .toolbarbutton-icon
{
background-image: none !important;
border-radius: 4px;
}
#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 {
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 {
border-radius: 6px;
}
#nav-bar toolbarbutton:hover > .toolbarbutton-icon,
#nav-bar toolbarbutton:hover > .toolbarbutton-badge-stack {
background-color: var(--toolbar-btn-hover) !important;
}
#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 {
background-color: var(--toolbar-btn-hover) !important;
}
#back-button {
padding-right: 2px !important;
padding-left: 2px !important;
margin-left: 6px !important;
}
#back-button {
padding-right: 2px !important;
padding-left: 2px !important;
margin-left: 6px !important;
}
/* Hamburger Menu */
#PanelUI-menu-button {
background-color: var(--secondary) !important;
padding-right: 2px !important;
margin-right: 6px !important;
}
/* Hamburger Menu */
#PanelUI-menu-button {
background-color: var(--secondary) !important;
padding-right: 2px !important;
margin-right: 6px !important;
}
/*
BOOKMARK BUTTONS
*/
#PersonalToolbar toolbarbutton {
margin: 3px 0px 3px 3px !important;
border-radius: 4px;
}
#PersonalToolbar toolbarbutton:hover {
background-color: var(--toolbar-btn-hover) !important;
}
'';
/*
BOOKMARK BUTTONS
*/
#PersonalToolbar toolbarbutton {
margin: 3px 0px 3px 3px !important;
border-radius: 4px;
}
#PersonalToolbar toolbarbutton:hover {
background-color: var(--toolbar-btn-hover) !important;
}
'';
userContent = ''
:root {
--background: #1d2021;
--secondary: #282828;
--newtab-body: #32302f;
--foreground: #EBDBB2;
}
:root {
--background: #1d2021;
--secondary: #282828;
--newtab-body: #32302f;
--foreground: #EBDBB2;
}
@-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;
}
}
@-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
pkgs.stdenv.mkDerivation
{
name = "gruvbox-plus";

View file

@ -1,13 +1,12 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs.helix = {
enable = true;
defaultEditor = true;
settings = {
keys.normal = {
space.space = "file_picker";
Z.Z = ":wq";
Z.Q = ":q!";
Z.Z = ":wq";
Z.Q = ":q!";
};
};
};
@ -23,6 +22,6 @@
jdt-language-server
gopls
dockerfile-language-server-nodejs
python312Packages.python-lsp-server
];
python312Packages.python-lsp-server
];
}

View file

@ -1,20 +1,19 @@
{ ... }:
{
{...}: {
services.hypridle = {
enable = true;
settings = {
listener = [
{
timeout = 600;
on-timeout = "hyprctl dispatch dpms off";
on-resume = "hyprctl dispatch dpms on";
}
{
timeout = 1200;
on-timeout = "systemctl suspend";
on-resume = "hyprctl dispatch dpms on";
}
];
};
settings = {
listener = [
{
timeout = 600;
on-timeout = "hyprctl dispatch dpms off";
on-resume = "hyprctl dispatch dpms on";
}
{
timeout = 1200;
on-timeout = "systemctl suspend";
on-resume = "hyprctl dispatch dpms on";
}
];
};
};
}

View file

@ -1,5 +1,4 @@
{ pkgs, ... }: {
{pkgs, ...}: {
home.packages = with pkgs; [
rofi-wayland
pwvucontrol
@ -18,23 +17,22 @@
wayland.windowManager.hyprland = {
enable = true;
settings = {
"$mod" = "SUPER";
"$scrPath" = "~/nix/home/hyprland/scirpts";
dwindle = {
pseudotile = true;
preserve_split = true;
};
dwindle = {
pseudotile = true;
preserve_split = true;
};
env = [
"HYPRCURSOR_THEME = Bibata-Modern-Ice"
"HYPRCURSOR_SIZE = 24"
"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 = {
@ -64,15 +63,14 @@
workspace_swipe_forever = true;
workspace_swipe_distance = 200;
};
bind = [
# launch Apps
"$mod,TAB, exec, alacritty"
"$mod, E, exec, nemo"
"$mod, S, exec, firefox"
"$mod, X, exec, keepassxc"
"$mod, M, exec, mw -Y && alacritty -e neomutt"
"$mod, M, exec, mw -Y && alacritty -e neomutt"
"$mod, N, exec, alacritty -e newsboat"
"$mod, A, exec, rofi -show drun"
"$mod, F, exec, freetube"
@ -81,8 +79,8 @@
"$mod+Shift, Z, exec, grim - | swappy -f -"
"$mod, Z, exec, sh ~/nix/home/hyprland/scripts/screen.sh"
"$mod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy"
# controles
# controles
"$mod, Q, killactive"
"$mod, W, togglefloating"
"$mod, R, togglesplit"
@ -98,8 +96,8 @@
"$mod, period, exec, cmus-remote --next"
"$mod, equal, exec, cmus-remote -v +5%"
"$mod, minus, exec, cmus-remote -v -5%"
# Move focus
# Move focus
"$mod, Return, fullscreen"
"$mod, H, movefocus, l"
"$mod, L, movefocus, r"
@ -117,7 +115,7 @@
"$mod SHIFT, L, swapwindow, r"
"$mod SHIFT, K, swapwindow, u"
"$mod SHIFT, J, swapwindow, d"
# Switch workspaces
"$mod, 1, workspace, 1"
"$mod, 2, workspace, 2"
@ -129,7 +127,7 @@
"$mod, 8, workspace, 8"
"$mod, 9, workspace, 9"
"$mod, 0, workspace, 10"
# Move active window to a workspace
"$mod+Shift, 1, movetoworkspace, 1"
"$mod+Shift, 2, movetoworkspace, 2"
@ -141,7 +139,6 @@
"$mod+Shift, 8, movetoworkspace, 8"
"$mod+Shift, 9, movetoworkspace, 9"
"$mod+Shift, 0, movetoworkspace, 10"
];
bindm = [
@ -159,14 +156,14 @@
];
general = {
gaps_in = 5;
gaps_in = 5;
gaps_out = 15;
border_size = 2;
allow_tearing = false;
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";
@ -8,7 +6,7 @@
sessionVariables = {
};
};
programs.home-manager.enable = true;
xdg.mimeApps.defaultApplications = {

View file

@ -1,19 +1,18 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
# programs.neomutt = {
# enable = true;
# sidebar.enable = true;
# vimKeys = true;
# enable = true;
# sidebar.enable = true;
# vimKeys = true;
# };
# programs.mbsync = {
# enable = true;
# enable = true;
# };
# programs.msmtp = {
# enable = true;
# enable = true;
# };
home.packages = with pkgs; [
mutt-wizard
home.packages = with pkgs; [
mutt-wizard
neomutt
msmtp
curl

View file

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

View file

@ -1,17 +1,19 @@
{ pkgs, lib, ... }:
{
pkgs,
lib,
...
}: {
programs.rofi = {
enable = true;
package = pkgs.rofi-wayland;
theme = lib.mkForce "~/nix/home/rofi/gruvbox-material.rasi";
extraConfig = {
display-ssh = "";
display-run = "";
display-drun = "";
display-ssh = "";
display-run = "";
display-drun = "";
display-window = "";
display-combi = "";
show-icons = true;
display-combi = "";
show-icons = true;
terminal = "alacritty";
};
};

View file

@ -1,6 +1,4 @@
{ pkgs, ... } :
{
{pkgs, ...}: {
programs.zsh = {
enable = true;
syntaxHighlighting.enable = true;
@ -9,7 +7,7 @@
historySubstringSearch.enable = true;
dotDir = ".config/zsh";
initExtra = "PROMPT='%F{green}%~%f '";
shellAliases = {
v = "hx";
cat = "bat";
@ -37,6 +35,5 @@
history.size = 1000000;
history.path = ".config/zsh/history";
};
}

View file

@ -1,9 +1,8 @@
{ inputs, ... }:
{
{inputs, ...}: {
networking.hostName = "desktop";
networking.networkmanager.enable = true;
boot.loader.systemd-boot.enable = true;
services.hardware.openrgb.enable = true;
services.hardware.openrgb.enable = true;
imports = [
../../modules

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";
fsType = "ext4";
};
fileSystems."/" = {
device = "/dev/disk/by-uuid/8c81ac04-9d75-4b58-8abe-3dfdd1b9e6ae";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/8810-3A12";
fsType = "vfat";
};
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,10 +1,14 @@
{ pkgs, lib, ... }:
{
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
"steam-original"
"steam"
"steam-run"
];
pkgs,
lib,
...
}: {
nixpkgs.config.allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [
"steam-original"
"steam"
"steam-run"
];
programs.steam.enable = true;
environment.systemPackages = with pkgs; [
prismlauncher

View file

@ -1,9 +1,12 @@
{ inputs, pkgs, ... }:
{
inputs,
pkgs,
...
}: {
networking.hostName = "laptop";
networking.networkmanager.enable = true;
boot.loader.systemd-boot.enable = true;
boot.loader.systemd-boot.enable = true;
imports = [
../../modules
./hardware.nix

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";
fsType = "ext4";
};
fileSystems."/" = {
device = "/dev/disk/by-uuid/7bc13c8d-91dd-4022-b4a8-624970b94a78";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/ABA5-ED78";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/ABA5-ED78";
fsType = "vfat";
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,16 +13,16 @@
users.users.joy = {
isNormalUser = true;
description = "joy";
extraGroups = [ "wheel" "docker" ];
};
extraGroups = ["wheel" "docker"];
};
virtualisation.docker.rootless.enable = true;
virtualisation.docker.enable = true;
virtualisation.waydroid.enable = true;
programs.hyprland.enable = true;
programs.zsh.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,54 +1,53 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
#hackerman
fastfetch
cmatrix
cava
nitch
gotop
sl
cbonsai
pipes
#image/video/music/recording
imv
mpv
cmus
obs-studio
pulseaudioFull
#gui stuff
uget
keepassxc
vesktop
signal-desktop
upscayl
nemo
firefox
bottles
boxbuddy
waydroid
transmission_4-gtk
teams-for-linux
#gnome
gnome-calculator
gnome-disk-utility
gnome.gnome-clocks
#random shit
htop
bat
screen
tree
zip
unzip
scrcpy
appimage-run
yt-dlp
distrobox
font-awesome
lm_sensors
brightnessctl
networkmanagerapplet
ncdu
git
];
#hackerman
fastfetch
cmatrix
cava
nitch
gotop
sl
cbonsai
pipes
#image/video/music/recording
imv
mpv
cmus
obs-studio
pulseaudioFull
#gui stuff
uget
keepassxc
vesktop
signal-desktop
upscayl
nemo
firefox
bottles
boxbuddy
waydroid
transmission_4-gtk
teams-for-linux
#gnome
gnome-calculator
gnome-disk-utility
gnome.gnome-clocks
#random shit
htop
bat
screen
tree
zip
unzip
scrcpy
appimage-run
yt-dlp
distrobox
font-awesome
lm_sensors
brightnessctl
networkmanagerapplet
ncdu
git
];
}

View file

@ -1,19 +1,17 @@
{ 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";
Restart = "on-failure";
RestartSec = 1;
TimeoutStopSec = 10;
};
Type = "simple";
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
Restart = "on-failure";
RestartSec = 1;
TimeoutStopSec = 10;
};
};
};
}

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,13 +1,12 @@
{ ... }:
{
{...}: {
services.openssh = {
enable = true;
settings = {
PasswordAuthentication = false;
AllowUsers = null;
};
};
};
users.users.joy = {
isNormalUser = true;
openssh.authorizedKeys.keys = [

View file

@ -1,9 +1,7 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
stylix = {
enable = true;
base16Scheme = {
base00 = "282828"; # ----
base01 = "3c3836"; # ---
@ -23,17 +21,17 @@
base0F = "a89984"; # brown
};
image = ./wallpaper.png;
image = ./wallpaper.png;
cursor = {
cursor = {
name = "Bibata-Modern-Ice";
package = pkgs.bibata-cursors;
package = pkgs.bibata-cursors;
size = 24;
};
fonts = {
sizes = {
applications = 12;
sizes = {
applications = 12;
terminal = 14;
desktop = 12;
popups = 12;

View file

@ -1,11 +1,9 @@
{ ... }:
{
{...}: {
services = {
syncthing = {
enable = true;
user = "joy";
configDir = "/home/joy/.config/syncthing";
syncthing = {
enable = true;
user = "joy";
configDir = "/home/joy/.config/syncthing";
};
};
}

View file

@ -1,7 +1,4 @@
{ inputs, ... }:
{
{inputs, ...}: {
system.autoUpgrade = {
enable = true;
flake = inputs.self.outPath;
@ -11,7 +8,6 @@
"-L" # print build logs
];
dates = "02:00";
randomizedDelaySec = "45min";
};
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;
}