This commit is contained in:
parent
863253bc74
commit
4c874e960d
606
flake.lock
606
flake.lock
File diff suppressed because it is too large
Load Diff
21
flake.nix
21
flake.nix
@ -1,5 +1,4 @@
|
|||||||
{
|
{
|
||||||
# https://github.com/anotherhadi/nixy
|
|
||||||
description = ''
|
description = ''
|
||||||
Nixy is a NixOS configuration with home-manager, secrets and custom theming all in one place.
|
Nixy is a NixOS configuration with home-manager, secrets and custom theming all in one place.
|
||||||
It's a simple way to manage your system configuration and dotfiles.
|
It's a simple way to manage your system configuration and dotfiles.
|
||||||
@ -24,26 +23,30 @@
|
|||||||
url = "github:Mic92/sops-nix";
|
url = "github:Mic92/sops-nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
hyprspace = {
|
# hyprspace = {
|
||||||
# BUG: This is a temporary fix for the flake issue
|
# url = "github:KZDKM/Hyprspace";
|
||||||
url = "github:KZDKM/Hyprspace/0a41e37c9112a752ac2a7b9afbbdac5d14c536c6";
|
# inputs.hyprland.follows = "hyprland";
|
||||||
inputs.hyprland.follows = "hyprland";
|
# };
|
||||||
};
|
|
||||||
nixy-wallpapers = {
|
nixy-wallpapers = {
|
||||||
url = "github:anotherhadi/nixy-wallpapers";
|
url = "github:anotherhadi/nixy-wallpapers";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
hyprland.url = "github:/hyprwm/Hyprland";
|
||||||
hyprpolkitagent.url = "github:hyprwm/hyprpolkitagent";
|
hyprpolkitagent.url = "github:hyprwm/hyprpolkitagent";
|
||||||
hyprsunset.url = "github:hyprwm/hyprsunset";
|
hyprsunset.url = "github:hyprwm/hyprsunset";
|
||||||
hyprpanel.url = "github:Jas-SinghFSU/HyprPanel";
|
hyprpanel.url = "github:Jas-SinghFSU/HyprPanel";
|
||||||
stylix.url = "github:danth/stylix";
|
stylix.url = "github:danth/stylix";
|
||||||
apple-fonts.url = "github:Lyndeno/apple-fonts.nix";
|
apple-fonts.url = "github:Lyndeno/apple-fonts.nix";
|
||||||
|
firefox-addons = {
|
||||||
|
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
zen-browser.url = "github:0xc000022070/zen-browser-flake";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ nixpkgs, ... }: {
|
outputs = inputs@{ nixpkgs, ... }: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
nixy = # CHANGEME: This should match the 'hostname' in your variables.nix file
|
dark = # CHANGEME: This should match the 'hostname' in your variables.nix file
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
@ -51,7 +54,7 @@
|
|||||||
nixpkgs.overlays = [ inputs.hyprpanel.overlay ];
|
nixpkgs.overlays = [ inputs.hyprpanel.overlay ];
|
||||||
_module.args = { inherit inputs; };
|
_module.args = { inherit inputs; };
|
||||||
}
|
}
|
||||||
inputs.nixos-hardware.nixosModules.omen-16-n0005ne # CHANGEME: check https://github.com/NixOS/nixos-hardware
|
inputs.nixos-hardware.nixosModules.lenovo-thinkpad-x270 # CHANGEME: check https://github.com/NixOS/nixos-hardware
|
||||||
inputs.home-manager.nixosModules.home-manager
|
inputs.home-manager.nixosModules.home-manager
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
./hosts/laptop/configuration.nix # CHANGEME: change the path to match your host folder
|
./hosts/laptop/configuration.nix # CHANGEME: change the path to match your host folder
|
||||||
|
|||||||
102
home/programs/firefox/default.nix
Normal file
102
home/programs/firefox/default.nix
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
{ pkgs, inputs, ... }: {
|
||||||
|
programs.firefox = {
|
||||||
|
enable = true;
|
||||||
|
profiles.dark = {
|
||||||
|
isDefault = true;
|
||||||
|
id = 0;
|
||||||
|
name = "dark";
|
||||||
|
settings = {
|
||||||
|
"signon.rememberSignons" = false;
|
||||||
|
"widget.use-xdg-desktop-portal.file-picker" = 1;
|
||||||
|
"browser.aboutConfig.showWarning" = false;
|
||||||
|
"browser.compactmode.show" = true;
|
||||||
|
"browser.cache.disk.enable" = false; # Be kind to hard drive
|
||||||
|
# Privacy settings
|
||||||
|
"privacy.donottrackheader.enabled" = true;
|
||||||
|
"privacy.trackingprotection.enabled" = true;
|
||||||
|
"privacy.trackingprotection.socialtracking.enabled" = true;
|
||||||
|
"privacy.partition.network_state.ocsp_cache" = true;
|
||||||
|
# Disable all sorts of telemetry
|
||||||
|
"browser.newtabpage.activity-stream.feeds.telemetry" = false;
|
||||||
|
"browser.newtabpage.activity-stream.telemetry" = false;
|
||||||
|
"browser.ping-centre.telemetry" = false;
|
||||||
|
"toolkit.telemetry.archive.enabled" = false;
|
||||||
|
"toolkit.telemetry.bhrPing.enabled" = false;
|
||||||
|
"toolkit.telemetry.enabled" = false;
|
||||||
|
"toolkit.telemetry.firstShutdownPing.enabled" = false;
|
||||||
|
"toolkit.telemetry.hybridContent.enabled" = false;
|
||||||
|
"toolkit.telemetry.newProfilePing.enabled" = false;
|
||||||
|
"toolkit.telemetry.reportingpolicy.firstRun" = false;
|
||||||
|
"toolkit.telemetry.shutdownPingSender.enabled" = false;
|
||||||
|
"toolkit.telemetry.unified" = false;
|
||||||
|
"toolkit.telemetry.updatePing.enabled" = false;
|
||||||
|
# As well as Firefox 'experiments'
|
||||||
|
"experiments.activeExperiment" = false;
|
||||||
|
"experiments.enabled" = false;
|
||||||
|
"experiments.supported" = false;
|
||||||
|
"network.allow-experiments" = false;
|
||||||
|
# Disable Pocket Integration
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includePocket" =
|
||||||
|
false;
|
||||||
|
"browser.newtabpage.activity-stream.showSponsored" = false;
|
||||||
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||||
|
"extensions.pocket.enabled" = false;
|
||||||
|
"extensions.pocket.api" = "";
|
||||||
|
"extensions.pocket.oAuthConsumerKey" = "";
|
||||||
|
"extensions.pocket.showHome" = false;
|
||||||
|
"extensions.pocket.site" = "";
|
||||||
|
};
|
||||||
|
search = {
|
||||||
|
force = true;
|
||||||
|
default = "Searx";
|
||||||
|
order = [ "Searx" "Google" ];
|
||||||
|
engines = {
|
||||||
|
"Nix Packages" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://search.nixos.org/packages";
|
||||||
|
params = [
|
||||||
|
{
|
||||||
|
name = "type";
|
||||||
|
value = "packages";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "query";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
icon =
|
||||||
|
"''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = [ "@np" ];
|
||||||
|
};
|
||||||
|
"NixOS Wiki" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://nixos.wiki/index.php?search={searchTerms}";
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
||||||
|
updateInterval = 24 * 60 * 60 * 1000; # every day
|
||||||
|
definedAliases = [ "@nw" ];
|
||||||
|
};
|
||||||
|
"Searx" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://searx.aicampground.com/?q={searchTerms}";
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
||||||
|
updateInterval = 24 * 60 * 60 * 1000; # every day
|
||||||
|
definedAliases = [ "@searx" ];
|
||||||
|
};
|
||||||
|
"Bing".metaData.hidden = true;
|
||||||
|
"Google".metaData.alias =
|
||||||
|
"@g"; # builtin engines only support specifying one additional alias
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
extensions = with inputs.firefox-addons.packages.${pkgs.system}; [
|
||||||
|
bitwarden
|
||||||
|
multi-account-containers
|
||||||
|
zotero-connector
|
||||||
|
unpaywall
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@ -22,6 +22,7 @@ in {
|
|||||||
extraConfig = {
|
extraConfig = {
|
||||||
init.defaultBranch = "main";
|
init.defaultBranch = "main";
|
||||||
push.autoSetupRemote = true;
|
push.autoSetupRemote = true;
|
||||||
|
color.ui = "1";
|
||||||
};
|
};
|
||||||
aliases = {
|
aliases = {
|
||||||
essa = "push --force";
|
essa = "push --force";
|
||||||
|
|||||||
@ -9,6 +9,7 @@
|
|||||||
"ctrl+tab" = "send_text all \\x1b[27;5;9~";
|
"ctrl+tab" = "send_text all \\x1b[27;5;9~";
|
||||||
"ctrl+shift+tab" = "send_text all \\x1b[27;6;9~";
|
"ctrl+shift+tab" = "send_text all \\x1b[27;6;9~";
|
||||||
"alt+tab" = "send_text all \\x1b[27;3;9~";
|
"alt+tab" = "send_text all \\x1b[27;3;9~";
|
||||||
|
"ctrl+shift+enter" = "new_window_with_cwd";
|
||||||
};
|
};
|
||||||
settings = {
|
settings = {
|
||||||
scrollback_lines = 10000;
|
scrollback_lines = 10000;
|
||||||
@ -23,6 +24,7 @@
|
|||||||
cursor_shape = "Underline";
|
cursor_shape = "Underline";
|
||||||
cursor_underline_thickness = 3;
|
cursor_underline_thickness = 3;
|
||||||
window_padding_width = 10;
|
window_padding_width = 10;
|
||||||
|
tab_bar_style = "powerline";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
8
home/programs/nemo/default.nix
Normal file
8
home/programs/nemo/default.nix
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
nemo-with-extensions
|
||||||
|
nemo-fileroller
|
||||||
|
nemo-emblems
|
||||||
|
file-roller
|
||||||
|
];
|
||||||
|
}
|
||||||
@ -62,6 +62,14 @@
|
|||||||
|
|
||||||
keymaps = [
|
keymaps = [
|
||||||
# General Mappings
|
# General Mappings
|
||||||
|
{
|
||||||
|
key = "j";
|
||||||
|
action = "gj";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
key = "k";
|
||||||
|
action = "gk";
|
||||||
|
}
|
||||||
{
|
{
|
||||||
key = "<leader>e";
|
key = "<leader>e";
|
||||||
action = "<cmd>Oil --float<cr>";
|
action = "<cmd>Oil --float<cr>";
|
||||||
|
|||||||
@ -29,10 +29,24 @@
|
|||||||
termguicolors = true;
|
termguicolors = true;
|
||||||
showmode = false;
|
showmode = false;
|
||||||
|
|
||||||
wrap = false;
|
wrap = true;
|
||||||
|
linebreak = true;
|
||||||
|
|
||||||
swapfile = false;
|
swapfile = false;
|
||||||
undofile = true;
|
undofile = true;
|
||||||
conceallevel = 3;
|
conceallevel = 3;
|
||||||
};
|
};
|
||||||
|
programs.nixvim.extraConfigLuaPost = ''
|
||||||
|
vim.g.neovide_scale_factor = 1.0
|
||||||
|
local change_scale_factor = function(delta)
|
||||||
|
vim.g.neovide_scale_factor = vim.g.neovide_scale_factor * delta
|
||||||
|
end
|
||||||
|
vim.keymap.set("n", "<C-=>", function()
|
||||||
|
change_scale_factor(1.25)
|
||||||
|
end)
|
||||||
|
vim.keymap.set("n", "<C-->", function()
|
||||||
|
change_scale_factor(1/1.25)
|
||||||
|
end)
|
||||||
|
'';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,20 +1,31 @@
|
|||||||
{
|
{ pkgs, ... }: {
|
||||||
programs.nixvim.plugins = {
|
programs.nixvim.plugins = {
|
||||||
lsp-format.enable = true;
|
lsp-format.enable = true;
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
servers = {
|
servers = {
|
||||||
bashls.enable = true;
|
bashls.enable = true;
|
||||||
clangd.enable = true;
|
clangd.enable = false;
|
||||||
gopls.enable = true;
|
gopls.enable = false;
|
||||||
nixd = {
|
nixd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraOptions = { expr = "import <nixpkgs> {}"; };
|
extraOptions = { expr = "import <nixpkgs> {}"; };
|
||||||
};
|
};
|
||||||
tailwindcss.enable = true;
|
tailwindcss.enable = true;
|
||||||
html.enable = true;
|
html.enable = true;
|
||||||
svelte.enable = true;
|
svelte.enable = false;
|
||||||
marksman.enable = true;
|
marksman.enable = true;
|
||||||
|
intelephense = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.nodePackages.intelephense;
|
||||||
|
settings = {
|
||||||
|
init_options = {
|
||||||
|
globalStoragePath = "~/.local/share/intelephense";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
dockerls.enable = true;
|
||||||
|
elmls.enable = true;
|
||||||
};
|
};
|
||||||
keymaps.lspBuf = {
|
keymaps.lspBuf = {
|
||||||
"gd" = "definition";
|
"gd" = "definition";
|
||||||
@ -32,15 +43,17 @@
|
|||||||
statix.enable = true;
|
statix.enable = true;
|
||||||
};
|
};
|
||||||
formatting = {
|
formatting = {
|
||||||
gofmt.enable = true;
|
# gofmt.enable = true;
|
||||||
goimports.enable = true;
|
# goimports.enable = true;
|
||||||
nixfmt.enable = true;
|
nixfmt.enable = true;
|
||||||
markdownlint.enable = true;
|
markdownlint.enable = true;
|
||||||
tidy.enable = true;
|
tidy.enable = true;
|
||||||
shellharden.enable = true;
|
shellharden.enable = true;
|
||||||
shfmt.enable = true;
|
shfmt.enable = true;
|
||||||
golines.enable = true;
|
# golines.enable = true;
|
||||||
gofumpt.enable = true;
|
# gofumpt.enable = true;
|
||||||
|
phpcsfixer.enable = true;
|
||||||
|
elm_format.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@ -112,6 +112,10 @@ in {
|
|||||||
modes = "n";
|
modes = "n";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
tables = {
|
||||||
|
formatOnMove = true;
|
||||||
|
trimWhitespace = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
extraFiles = {
|
extraFiles = {
|
||||||
"after/ftplugin/markdown.lua".text = ''
|
"after/ftplugin/markdown.lua".text = ''
|
||||||
|
|||||||
6
home/programs/nvim/plugins/project.nix
Normal file
6
home/programs/nvim/plugins/project.nix
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
programs.nixvim.plugins.project-nvim = {
|
||||||
|
enable = true;
|
||||||
|
enableTelescope = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@ -19,15 +19,15 @@
|
|||||||
right = "|";
|
right = "|";
|
||||||
};
|
};
|
||||||
sectionSeparators = {
|
sectionSeparators = {
|
||||||
left = "█"; #
|
left = ""; #
|
||||||
right = "█"; #
|
right = ""; #
|
||||||
};
|
};
|
||||||
sections = {
|
sections = {
|
||||||
lualine_a = [ "mode" ];
|
lualine_a = [ "mode" ];
|
||||||
lualine_b = [ "branch" "diff" "diagnostics" ];
|
lualine_b = [ "branch" "diff" "diagnostics" ];
|
||||||
lualine_c = [ "filename" ];
|
lualine_c = [ "filename" ];
|
||||||
lualine_x = [ "filetype" ];
|
lualine_x = [ "filetype" ];
|
||||||
lualine_y = [ "progress" ];
|
lualine_y = [ "progress" "selectioncount" ];
|
||||||
lualine_z = [ ''" " .. os.date("%R")'' ];
|
lualine_z = [ ''" " .. os.date("%R")'' ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -44,7 +44,7 @@
|
|||||||
};
|
};
|
||||||
trouble.enable = true;
|
trouble.enable = true;
|
||||||
indent-blankline.enable = true;
|
indent-blankline.enable = true;
|
||||||
nvim-colorizer.enable = true;
|
colorizer.enable = true;
|
||||||
tagbar = {
|
tagbar = {
|
||||||
enable = true;
|
enable = true;
|
||||||
tagsPackage = pkgs.universal-ctags;
|
tagsPackage = pkgs.universal-ctags;
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
copilot-vim.enable = true;
|
copilot-vim.enable = true;
|
||||||
flash.enable = true;
|
flash.enable = true;
|
||||||
image = {
|
image = {
|
||||||
enable = true;
|
enable = false;
|
||||||
integrations.markdown = {
|
integrations.markdown = {
|
||||||
clearInInsertMode = true;
|
clearInInsertMode = true;
|
||||||
onlyRenderImageAtCursor = true;
|
onlyRenderImageAtCursor = true;
|
||||||
@ -43,7 +43,10 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# treesitter-context.enable = true;
|
orgmode.enable = true;
|
||||||
|
treesitter-context.enable = true;
|
||||||
|
nvim-surround.enable = true;
|
||||||
|
vim-suda.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
3
home/programs/office/default.nix
Normal file
3
home/programs/office/default.nix
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
home.packages = with pkgs; [ libreoffice thunderbird marp-cli ];
|
||||||
|
}
|
||||||
16
home/programs/pass/default.nix
Normal file
16
home/programs/pass/default.nix
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
home.packages = with pkgs; [ pass seahorse gnome-keyring pinentry-all ];
|
||||||
|
|
||||||
|
services.gnome-keyring.enable = true;
|
||||||
|
programs.gpg.enable = true;
|
||||||
|
services.gpg-agent = {
|
||||||
|
enable = true;
|
||||||
|
maxCacheTtl = 604800;
|
||||||
|
defaultCacheTtl = 604800;
|
||||||
|
enableSshSupport = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
verbose = true;
|
||||||
|
enableScDaemon = false;
|
||||||
|
pinentryPackage = pkgs.pinentry-all;
|
||||||
|
};
|
||||||
|
}
|
||||||
@ -13,7 +13,7 @@ let
|
|||||||
"config": {
|
"config": {
|
||||||
"title" : "Welcome Home",
|
"title" : "Welcome Home",
|
||||||
"openLinksInNewTab": false,
|
"openLinksInNewTab": false,
|
||||||
"locale": "fr-FR",
|
"locale": "id-ID",
|
||||||
"colors": {
|
"colors": {
|
||||||
"primary": "${accent}",
|
"primary": "${accent}",
|
||||||
"background": "${background}",
|
"background": "${background}",
|
||||||
@ -49,37 +49,36 @@ let
|
|||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
homepage = pkgs.buildNpmPackage {
|
# homepage = pkgs.buildNpmPackage {
|
||||||
pname = "homepage";
|
# pname = "homepage";
|
||||||
version = "0.0.0";
|
# version = "0.0.0";
|
||||||
|
#
|
||||||
|
# src = pkgs.fetchFromGitHub {
|
||||||
|
# owner = "anotherhadi";
|
||||||
|
# repo = "homepage";
|
||||||
|
# rev = "b77d35ed3596eb451bd2ec78063d7cc6e73c773d";
|
||||||
|
# hash = "sha256-j/40922kfAh6zqJ4IRYpr66YXNNYsxuXwZ0aiJFJea0=";
|
||||||
|
# };
|
||||||
|
#
|
||||||
|
# # npmDepsHash = lib.fakeHash;
|
||||||
|
# npmDepsHash = "sha256-bG+CHTq2Rst3JMxsjAC81KhK+G7WwsTVD1eyP87g0z4=";
|
||||||
|
#
|
||||||
|
# buildPhase = ''
|
||||||
|
# npm install
|
||||||
|
# cp ${pkgs.writeText "src/routes/config.json" settings} src/routes/config.json
|
||||||
|
# npm run build
|
||||||
|
# mkdir $out
|
||||||
|
# mv build $out
|
||||||
|
# '';
|
||||||
|
#
|
||||||
|
# meta = {
|
||||||
|
# description = "homepage";
|
||||||
|
# homepage = "https://github.com/anotherhadi/homepage";
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
|
||||||
src = pkgs.fetchFromGitHub {
|
in
|
||||||
owner = "anotherhadi";
|
{
|
||||||
repo = "homepage";
|
|
||||||
rev = "b77d35ed3596eb451bd2ec78063d7cc6e73c773d";
|
|
||||||
hash = "sha256-j/40922kfAh6zqJ4IRYpr66YXNNYsxuXwZ0aiJFJea0=";
|
|
||||||
};
|
|
||||||
|
|
||||||
# npmDepsHash = lib.fakeHash;
|
|
||||||
npmDepsHash = "sha256-bG+CHTq2Rst3JMxsjAC81KhK+G7WwsTVD1eyP87g0z4=";
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
npm install
|
|
||||||
cp ${
|
|
||||||
pkgs.writeText "src/routes/config.json" settings
|
|
||||||
} src/routes/config.json
|
|
||||||
npm run build
|
|
||||||
mkdir $out
|
|
||||||
mv build $out
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "homepage";
|
|
||||||
homepage = "https://github.com/anotherhadi/homepage";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
in {
|
|
||||||
|
|
||||||
imports = [ ./duckduckgo-colorscheme.nix ];
|
imports = [ ./duckduckgo-colorscheme.nix ];
|
||||||
|
|
||||||
@ -99,7 +98,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
quickmarks = {
|
quickmarks = {
|
||||||
home = "${homepage}/build/index.html";
|
# home = "${homepage}/build/index.html";
|
||||||
server = "https://home.anotherhadi.com";
|
server = "https://home.anotherhadi.com";
|
||||||
jack = "https://home.anotherhadi.com";
|
jack = "https://home.anotherhadi.com";
|
||||||
mynixos = "https://mynixos.com";
|
mynixos = "https://mynixos.com";
|
||||||
@ -119,14 +118,13 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
url = {
|
# url = {
|
||||||
default_page = "${homepage}/build/index.html";
|
# default_page = "${homepage}/build/index.html";
|
||||||
start_pages = [ "${homepage}/build/index.html" ];
|
# start_pages = [ "${homepage}/build/index.html" ];
|
||||||
};
|
# };
|
||||||
|
|
||||||
colors = {
|
colors = {
|
||||||
webpage.preferred_color_scheme =
|
webpage.preferred_color_scheme = "dark"; # Enable dark mode for websites that support it
|
||||||
"dark"; # Enable dark mode for websites that support it
|
|
||||||
};
|
};
|
||||||
|
|
||||||
statusbar.show = "in-mode";
|
statusbar.show = "in-mode";
|
||||||
@ -157,7 +155,9 @@ in {
|
|||||||
remove_finished = 0;
|
remove_finished = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
hints = { radius = 1; };
|
hints = {
|
||||||
|
radius = 1;
|
||||||
|
};
|
||||||
|
|
||||||
scrolling = {
|
scrolling = {
|
||||||
bar = "never";
|
bar = "never";
|
||||||
@ -178,7 +178,7 @@ in {
|
|||||||
|
|
||||||
keyBindings = {
|
keyBindings = {
|
||||||
normal = {
|
normal = {
|
||||||
"gh" = "open ${homepage}/build/index.html";
|
# "gh" = "open ${homepage}/build/index.html";
|
||||||
"gs" = "open https://home.anotherhadi.com";
|
"gs" = "open https://home.anotherhadi.com";
|
||||||
|
|
||||||
" p" = "tab-move -";
|
" p" = "tab-move -";
|
||||||
|
|||||||
@ -1,4 +1,11 @@
|
|||||||
{
|
{
|
||||||
imports =
|
imports = [
|
||||||
[ ./fzf.nix ./zsh.nix ./starship.nix ./zoxide.nix ./tmux.nix ./eza.nix ];
|
./fzf.nix
|
||||||
|
./zsh.nix
|
||||||
|
./starship.nix
|
||||||
|
./zoxide.nix
|
||||||
|
./tmux.nix
|
||||||
|
./eza.nix
|
||||||
|
./direnv.nix
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
8
home/programs/shell/direnv.nix
Normal file
8
home/programs/shell/direnv.nix
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# Direnv for development
|
||||||
|
{
|
||||||
|
programs.direnv = {
|
||||||
|
enable = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
nix-direnv.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@ -8,6 +8,9 @@ in {
|
|||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
add_newline = true;
|
add_newline = true;
|
||||||
|
aws.disabled = true;
|
||||||
|
azure.disabled = true;
|
||||||
|
gcloud.disabled = true;
|
||||||
format = lib.concatStrings [
|
format = lib.concatStrings [
|
||||||
"$directory"
|
"$directory"
|
||||||
"$git_branch"
|
"$git_branch"
|
||||||
|
|||||||
@ -29,7 +29,8 @@ in {
|
|||||||
enable = true;
|
enable = true;
|
||||||
mouse = true;
|
mouse = true;
|
||||||
shell = "${pkgs.zsh}/bin/zsh";
|
shell = "${pkgs.zsh}/bin/zsh";
|
||||||
prefix = "C-s";
|
prefix = "C-a";
|
||||||
|
baseIndex = 1;
|
||||||
terminal = "kitty";
|
terminal = "kitty";
|
||||||
keyMode = "vi";
|
keyMode = "vi";
|
||||||
|
|
||||||
@ -45,13 +46,18 @@ in {
|
|||||||
bind-key -n C-Tab next-window
|
bind-key -n C-Tab next-window
|
||||||
bind-key -n C-S-Tab previous-window
|
bind-key -n C-S-Tab previous-window
|
||||||
bind-key -n M-Tab new-window
|
bind-key -n M-Tab new-window
|
||||||
|
bind C-l send-keys 'C-l'
|
||||||
|
|
||||||
|
bind c new-window -c "#{pane_current_path}"
|
||||||
|
bind '"' split-window -c "#{pane_current_path}"
|
||||||
|
bind % split-window -h -c "#{pane_current_path}"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
plugins = with pkgs; [
|
plugins = with pkgs; [
|
||||||
tmuxPlugins.vim-tmux-navigator
|
tmuxPlugins.vim-tmux-navigator
|
||||||
tmuxPlugins.resurrect
|
tmuxPlugins.resurrect
|
||||||
tmuxPlugins.sensible
|
tmuxPlugins.sensible
|
||||||
tmuxPlugins.tokyo-night-tmux
|
# tmuxPlugins.tokyo-night-tmux
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
home.packages = [ Config ];
|
home.packages = [ Config ];
|
||||||
|
|||||||
@ -3,12 +3,24 @@
|
|||||||
let fetch = config.var.theme.fetch; # neofetch, nerdfetch, pfetch
|
let fetch = config.var.theme.fetch; # neofetch, nerdfetch, pfetch
|
||||||
in {
|
in {
|
||||||
|
|
||||||
home.packages = with pkgs; [ bat ripgrep tldr sesh ];
|
home.packages = with pkgs; [ ripgrep tldr sesh ];
|
||||||
|
|
||||||
home.sessionPath = [ "$HOME/go/bin" ];
|
home.sessionPath = [ "$HOME/go/bin" ];
|
||||||
|
|
||||||
|
programs.bat = {
|
||||||
|
enable = true;
|
||||||
|
extraPackages = with pkgs.bat-extras; [
|
||||||
|
batman
|
||||||
|
batdiff
|
||||||
|
batgrep
|
||||||
|
batwatch
|
||||||
|
prettybat
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
autocd = true;
|
||||||
enableCompletion = true;
|
enableCompletion = true;
|
||||||
autosuggestion.enable = true;
|
autosuggestion.enable = true;
|
||||||
syntaxHighlighting.enable = true;
|
syntaxHighlighting.enable = true;
|
||||||
@ -64,10 +76,16 @@ in {
|
|||||||
open = "${pkgs.xdg-utils}/bin/xdg-open";
|
open = "${pkgs.xdg-utils}/bin/xdg-open";
|
||||||
icat = "${pkgs.kitty}/bin/kitty +kitten icat";
|
icat = "${pkgs.kitty}/bin/kitty +kitten icat";
|
||||||
|
|
||||||
|
cat = "bat";
|
||||||
|
diff = "batdiff";
|
||||||
|
man = "batman";
|
||||||
|
grep = "batgrep";
|
||||||
|
rofi = "wofi";
|
||||||
|
|
||||||
wireguard-import = "nmcli connection import type wireguard file";
|
wireguard-import = "nmcli connection import type wireguard file";
|
||||||
|
|
||||||
notes =
|
notes =
|
||||||
"nvim ~/nextcloud/Notes/index.md --cmd 'cd ~/nextcloud/Notes' -c ':Telescope find_files'";
|
"nvim ~/nextcloud/Catatan/index.md --cmd 'cd ~/nextcloud/Catatan' -c ':Telescope find_files'";
|
||||||
note = "notes";
|
note = "notes";
|
||||||
|
|
||||||
# git
|
# git
|
||||||
|
|||||||
@ -9,38 +9,40 @@
|
|||||||
thunar-volman
|
thunar-volman
|
||||||
];
|
];
|
||||||
|
|
||||||
home.file.".config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml".text = ''
|
# home.file.".config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml".text = ''
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
# <?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
#
|
||||||
<channel name="thunar" version="1.0">
|
# <channel name="thunar" version="1.0">
|
||||||
<property name="last-view" type="string" value="ThunarIconView"/>
|
# <property name="last-view" type="string" value="ThunarIconView"/>
|
||||||
<property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_100_PERCENT"/>
|
# <property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_100_PERCENT"/>
|
||||||
<property name="last-window-maximized" type="bool" value="true"/>
|
# <property name="last-window-maximized" type="bool" value="true"/>
|
||||||
<property name="last-separator-position" type="int" value="170"/>
|
# <property name="last-separator-position" type="int" value="170"/>
|
||||||
<property name="last-statusbar-visible" type="bool" value="false"/>
|
# <property name="last-statusbar-visible" type="bool" value="false"/>
|
||||||
<property name="last-menubar-visible" type="bool" value="false"/>
|
# <property name="last-menubar-visible" type="bool" value="false"/>
|
||||||
<property name="misc-single-click" type="bool" value="false"/>
|
# <property name="misc-single-click" type="bool" value="false"/>
|
||||||
<property name="shortcuts-icon-emblems" type="bool" value="true"/>
|
# <property name="shortcuts-icon-emblems" type="bool" value="true"/>
|
||||||
<property name="tree-icon-emblems" type="bool" value="true"/>
|
# <property name="tree-icon-emblems" type="bool" value="true"/>
|
||||||
<property name="misc-file-size-binary" type="bool" value="true"/>
|
# <property name="misc-file-size-binary" type="bool" value="true"/>
|
||||||
<property name="misc-thumbnail-draw-frames" type="bool" value="false"/>
|
# <property name="misc-thumbnail-draw-frames" type="bool" value="false"/>
|
||||||
<property name="misc-text-beside-icons" type="bool" value="true"/>
|
# <property name="misc-text-beside-icons" type="bool" value="true"/>
|
||||||
<property name="misc-change-window-icon" type="bool" value="true"/>
|
# <property name="misc-change-window-icon" type="bool" value="true"/>
|
||||||
<property name="hidden-bookmarks" type="array">
|
# <property name="hidden-bookmarks" type="array">
|
||||||
<value type="string" value="computer:///"/>
|
# <value type="string" value="computer:///"/>
|
||||||
<value type="string" value="recent:///"/>
|
# <value type="string" value="recent:///"/>
|
||||||
<value type="string" value="file:///"/>
|
# <value type="string" value="file:///"/>
|
||||||
<value type="string" value="network:///"/>
|
# <value type="string" value="network:///"/>
|
||||||
</property>
|
# </property>
|
||||||
<property name="hidden-devices" type="array">
|
# <property name="hidden-devices" type="array">
|
||||||
<value type="string" value="52FEA905FEA8E309"/>
|
# <value type="string" value="52FEA905FEA8E309"/>
|
||||||
</property>
|
# </property>
|
||||||
<property name="last-toolbar-item-order" type="string" value="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17"/>
|
# <property name="last-toolbar-item-order" type="string" value="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17"/>
|
||||||
<property name="last-toolbar-visible-buttons" type="string" value="0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0"/>
|
# <property name="last-toolbar-visible-buttons" type="string" value="0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0"/>
|
||||||
<property name="last-location-bar" type="string" value="ThunarLocationButtons"/>
|
# <property name="last-location-bar" type="string" value="ThunarLocationButtons"/>
|
||||||
<property name="last-show-hidden" type="bool" value="false"/>
|
# <property name="last-show-hidden" type="bool" value="false"/>
|
||||||
<property name="last-details-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_38_PERCENT"/>
|
# <property name="last-details-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_38_PERCENT"/>
|
||||||
<property name="last-details-view-column-widths" type="string" value="50,50,127,50,50,50,50,50,751,50,50,75,50,145"/>
|
# <property name="last-details-view-column-widths" type="string" value="50,50,127,50,50,50,50,50,751,50,50,75,50,145"/>
|
||||||
</channel>
|
# <property name="misc-middle-click-in-tab" type="bool" value="true"/>
|
||||||
'';
|
# <property name="last-details-view-visible-columns" type="string" value="THUNAR_COLUMN_DATE_MODIFIED,THUNAR_COLUMN_NAME,THUNAR_COLUMN_SIZE,THUNAR_COLUMN_TYPE"/>
|
||||||
|
# </channel>
|
||||||
|
# '';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,9 +9,10 @@
|
|||||||
#- - `night-shift-status-icon` checks if Night-Shift is active. (icon)
|
#- - `night-shift-status-icon` checks if Night-Shift is active. (icon)
|
||||||
{ inputs, pkgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
let
|
||||||
|
value = "4500";
|
||||||
|
|
||||||
night-shift-on = pkgs.writeShellScriptBin "night-shift-on" ''
|
night-shift-on = pkgs.writeShellScriptBin "night-shift-on" ''
|
||||||
${pkgs.hyprshade}/bin/hyprshade on blue-light-filter
|
${pkgs.hyprsunset}/bin/hyprsunset -t ${value} &
|
||||||
title=" Night-Shift Activated"
|
title=" Night-Shift Activated"
|
||||||
description="Night-Shift is now activated! Your screen will be warmer and easier on the eyes."
|
description="Night-Shift is now activated! Your screen will be warmer and easier on the eyes."
|
||||||
|
|
||||||
@ -19,7 +20,7 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
night-shift-off = pkgs.writeShellScriptBin "night-shift-off" ''
|
night-shift-off = pkgs.writeShellScriptBin "night-shift-off" ''
|
||||||
${pkgs.hyprshade}/bin/hyprshade off
|
pkill hyprsunset
|
||||||
title=" Night-Shift Deactivated"
|
title=" Night-Shift Deactivated"
|
||||||
description="Night-Shift is now deactivated! Your screen will return to normal."
|
description="Night-Shift is now deactivated! Your screen will return to normal."
|
||||||
|
|
||||||
@ -27,7 +28,7 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
night-shift = pkgs.writeShellScriptBin "night-shift" ''
|
night-shift = pkgs.writeShellScriptBin "night-shift" ''
|
||||||
if [[ $(${pkgs.hyprshade}/bin/hyprshade current) ]]; then
|
if pidof "hyprsunset"; then
|
||||||
night-shift-off
|
night-shift-off
|
||||||
else
|
else
|
||||||
night-shift-on
|
night-shift-on
|
||||||
@ -35,7 +36,7 @@ let
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
night-shift-status = pkgs.writeShellScriptBin "night-shift-status" ''
|
night-shift-status = pkgs.writeShellScriptBin "night-shift-status" ''
|
||||||
if [[ $(${pkgs.hyprshade}/bin/hyprshade current) ]]; then
|
if pidof "hyprsunset"; then
|
||||||
echo "1"
|
echo "1"
|
||||||
else
|
else
|
||||||
echo "0"
|
echo "0"
|
||||||
@ -44,7 +45,7 @@ let
|
|||||||
|
|
||||||
night-shift-status-icon =
|
night-shift-status-icon =
|
||||||
pkgs.writeShellScriptBin "night-shift-status-icon" ''
|
pkgs.writeShellScriptBin "night-shift-status-icon" ''
|
||||||
if [[ $(hyprshade current) ]]; then
|
if pidof "hyprsunset"; then
|
||||||
echo ""
|
echo ""
|
||||||
else
|
else
|
||||||
echo ""
|
echo ""
|
||||||
@ -52,7 +53,7 @@ let
|
|||||||
'';
|
'';
|
||||||
in {
|
in {
|
||||||
home.packages = [
|
home.packages = [
|
||||||
inputs.hyprsunset.packages."${pkgs.system}".hyprsunset
|
pkgs.hyprsunset
|
||||||
night-shift-on
|
night-shift-on
|
||||||
night-shift-off
|
night-shift-off
|
||||||
night-shift
|
night-shift
|
||||||
|
|||||||
@ -37,8 +37,8 @@ in {
|
|||||||
theme = lib.mkForce { name = "FlatColor"; };
|
theme = lib.mkForce { name = "FlatColor"; };
|
||||||
|
|
||||||
iconTheme = {
|
iconTheme = {
|
||||||
package = pkgs.kora-icon-theme;
|
package = pkgs.tela-icon-theme;
|
||||||
name = "Kora";
|
name = "Tela-dark";
|
||||||
};
|
};
|
||||||
|
|
||||||
font = { name = config.stylix.fonts.serif.name; };
|
font = { name = config.stylix.fonts.serif.name; };
|
||||||
|
|||||||
@ -13,13 +13,29 @@
|
|||||||
|
|
||||||
listener = [
|
listener = [
|
||||||
{
|
{
|
||||||
timeout = 600;
|
timeout = 150; # 2.5min.
|
||||||
|
on-timeout =
|
||||||
|
"${pkgs.brightnessctl}/bin/brightnessctl -s set 10"; # set monitor backlight to minimum, avoid 0 on OLED monitor.
|
||||||
|
on-resume =
|
||||||
|
"${pkgs.brightnessctl}/bin/brightnessctl -r"; # monitor backlight restore.
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
timeout = 300;
|
||||||
on-timeout = "pidof hyprlock || ${pkgs.hyprlock}/bin/hyprlock";
|
on-timeout = "pidof hyprlock || ${pkgs.hyprlock}/bin/hyprlock";
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
timeout = 660;
|
timeout = 430; # 5.5min
|
||||||
on-timeout = "systemctl suspend";
|
on-timeout =
|
||||||
|
"${pkgs.hyprland}/bin/hyprctl dispatch dpms off"; # screen off when timeout has passed
|
||||||
|
on-resume =
|
||||||
|
"${pkgs.hyprland}/bin/hyprctl dispatch dpms on"; # screen on when activity is detected after timeout has fired.
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
timeout = 960;
|
||||||
|
on-timeout = "systemctl sleep";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|||||||
@ -3,14 +3,18 @@
|
|||||||
bind = [
|
bind = [
|
||||||
"$mod,RETURN, exec, ${pkgs.kitty}/bin/kitty" # Kitty
|
"$mod,RETURN, exec, ${pkgs.kitty}/bin/kitty" # Kitty
|
||||||
"$mod,E, exec, ${pkgs.xfce.thunar}/bin/thunar" # Thunar
|
"$mod,E, exec, ${pkgs.xfce.thunar}/bin/thunar" # Thunar
|
||||||
"$mod,B, exec, ${pkgs.qutebrowser}/bin/qutebrowser" # Qutebrowser
|
# "$mod,B, exec, ${pkgs.qutebrowser}/bin/qutebrowser" # Qutebrowser
|
||||||
"$mod,K, exec, ${pkgs.bitwarden}/bin/bitwarden" # Bitwarden
|
"$mod,U, exec, ${pkgs.firefox}/bin/firefox" # Firefox
|
||||||
"$mod,L, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock
|
# "$shiftMod,B, exec, ${pkgs.bitwarden}/bin/bitwarden" # Bitwarden
|
||||||
|
"$shiftMod,Q, exec, ${pkgs.hyprlock}/bin/hyprlock" # Lock
|
||||||
"$mod,X, exec, powermenu" # Powermenu
|
"$mod,X, exec, powermenu" # Powermenu
|
||||||
"$mod,SPACE, exec, menu" # Launcher
|
"$mod,SPACE, exec, menu" # Launcher
|
||||||
"$mod,C, exec, quickmenu" # Quickmenu
|
"$mod,C, exec, quickmenu" # Quickmenu
|
||||||
"$shiftMod,SPACE, exec, hyprfocus-toggle" # Toggle HyprFocus
|
# "$shiftMod,SPACE, exec, hyprfocus-toggle" # Toggle HyprFocus
|
||||||
"$mod,TAB, overview:toggle" # Overview
|
"$mod,TAB, workspace, previous" # Overview
|
||||||
|
# "$shiftMod,TAB, overview:toggle" # Overview
|
||||||
|
"$mod, bracketright, workspace, e+1"
|
||||||
|
"$mod, bracketleft, workspace, e-1"
|
||||||
|
|
||||||
"$mod,Q, killactive," # Close window
|
"$mod,Q, killactive," # Close window
|
||||||
"$mod,T, togglefloating," # Toggle Floating
|
"$mod,T, togglefloating," # Toggle Floating
|
||||||
@ -24,12 +28,21 @@
|
|||||||
"$shiftMod,left, layoutmsg, addmaster" # Add to master
|
"$shiftMod,left, layoutmsg, addmaster" # Add to master
|
||||||
"$shiftMod,right, layoutmsg, removemaster" # Remove from master
|
"$shiftMod,right, layoutmsg, removemaster" # Remove from master
|
||||||
|
|
||||||
|
"$mod,h, movefocus, l" # Move focus left
|
||||||
|
"$mod,l, movefocus, r" # Move focus Right
|
||||||
|
"$mod,k, movefocus, u" # Move focus Up
|
||||||
|
"$mod,j, movefocus, d" # Move focus Down
|
||||||
|
"$ctrlMod,k, focusmonitor, -1" # Focus previous monitor
|
||||||
|
"$ctrlMod,j, focusmonitor, 1" # Focus next monitor
|
||||||
|
"$ctrlMod,h, layoutmsg, addmaster" # Add to master
|
||||||
|
"$ctrlMod,l, layoutmsg, removemaster" # Remove from master
|
||||||
|
|
||||||
"$mod,PRINT, exec, screenshot window" # Screenshot window
|
"$mod,PRINT, exec, screenshot window" # Screenshot window
|
||||||
",PRINT, exec, screenshot monitor" # Screenshot monitor
|
",PRINT, exec, screenshot monitor" # Screenshot monitor
|
||||||
"$shiftMod,PRINT, exec, screenshot region" # Screenshot region
|
"$shiftMod,PRINT, exec, screenshot region" # Screenshot region
|
||||||
"ALT,PRINT, exec, screenshot region swappy" # Screenshot region then edit
|
"ALT,PRINT, exec, screenshot region swappy" # Screenshot region then edit
|
||||||
|
|
||||||
"$shiftMod,S, exec, ${pkgs.qutebrowser}/bin/qutebrowser :open $(wofi --show dmenu -L 1 -p ' Search on internet')" # Search on internet with wofi
|
# "$shiftMod,S, exec, ${pkgs.qutebrowser}/bin/qutebrowser :open $(wofi --show dmenu -L 1 -p ' Search on internet')" # Search on internet with wofi
|
||||||
"$shiftMod,C, exec, clipboard" # Clipboard picker with wofi
|
"$shiftMod,C, exec, clipboard" # Clipboard picker with wofi
|
||||||
"$shiftMod,E, exec, ${pkgs.wofi-emoji}/bin/wofi-emoji" # Emoji picker with wofi
|
"$shiftMod,E, exec, ${pkgs.wofi-emoji}/bin/wofi-emoji" # Emoji picker with wofi
|
||||||
"$mod,F2, exec, night-shift" # Toggle night shift
|
"$mod,F2, exec, night-shift" # Toggle night shift
|
||||||
@ -61,5 +74,10 @@
|
|||||||
",XF86MonBrightnessDown, exec, brightness-down" # Brightness Down
|
",XF86MonBrightnessDown, exec, brightness-down" # Brightness Down
|
||||||
];
|
];
|
||||||
|
|
||||||
|
binds = {
|
||||||
|
workspace_back_and_forth = false;
|
||||||
|
allow_workspace_cycles = true;
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,17 +1,21 @@
|
|||||||
# So best window tiling manager
|
# So best window tiling manager
|
||||||
{ pkgs, config, inputs, ... }:
|
{ pkgs, config, inputs, ... }:
|
||||||
let
|
let
|
||||||
border-size = config.var.theme.border-size;
|
inherit (config.var.theme)
|
||||||
gaps-in = config.var.theme.gaps-in;
|
border-size gaps-in gaps-out active-opacity inactive-opacity rounding blur;
|
||||||
gaps-out = config.var.theme.gaps-out;
|
inherit (config.var) keyboardLayout;
|
||||||
active-opacity = config.var.theme.active-opacity;
|
# border-size = config.var.theme.border-size;
|
||||||
inactive-opacity = config.var.theme.inactive-opacity;
|
# gaps-in = config.var.theme.gaps-in;
|
||||||
rounding = config.var.theme.rounding;
|
# gaps-out = config.var.theme.gaps-out;
|
||||||
blur = config.var.theme.blur;
|
# active-opacity = config.var.theme.active-opacity;
|
||||||
keyboardLayout = config.var.keyboardLayout;
|
# inactive-opacity = config.var.theme.inactive-opacity;
|
||||||
|
# rounding = config.var.theme.rounding;
|
||||||
|
# blur = config.var.theme.blur;
|
||||||
|
# keyboardLayout = config.var.keyboardLayout;
|
||||||
in {
|
in {
|
||||||
|
|
||||||
imports = [ ./animations.nix ./bindings.nix ./polkitagent.nix ];
|
imports =
|
||||||
|
[ ./animations.nix ./bindings.nix ./polkitagent.nix ./windowrule.nix ];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
qt5.qtwayland
|
qt5.qtwayland
|
||||||
@ -39,31 +43,40 @@ in {
|
|||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
systemd.enable = true;
|
systemd = {
|
||||||
|
enable = true;
|
||||||
|
variables = [ "--all" ];
|
||||||
|
};
|
||||||
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
|
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
|
||||||
|
|
||||||
plugins = [ inputs.hyprspace.packages.${pkgs.system}.Hyprspace ];
|
# plugins = [ inputs.hyprspace.packages."${pkgs.system}".Hyprspace ];
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
"$mod" = "SUPER";
|
"$mod" = "SUPER";
|
||||||
"$shiftMod" = "SUPER_SHIFT";
|
"$shiftMod" = "SUPER_SHIFT";
|
||||||
|
"$ctrlMod" = "SUPER_CTRL";
|
||||||
|
|
||||||
exec-once = [
|
exec-once = [
|
||||||
"${pkgs.bitwarden}/bin/bitwarden"
|
# "${pkgs.bitwarden}/bin/bitwarden"
|
||||||
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||||
];
|
];
|
||||||
|
|
||||||
plugin = { overview = { autoDrag = false; }; };
|
plugin = { overview = { autoDrag = false; }; };
|
||||||
|
|
||||||
monitor = [
|
monitor = [
|
||||||
"eDP-2,highres,0x0,1"
|
"eDP-1,preffered,0x0,1"
|
||||||
"DP-7, disable"
|
"desc:LG Electronics 16EN33 305INKH5P181,preferred,0x-768,1"
|
||||||
"DP-8, disable"
|
|
||||||
"DP-9, disable"
|
|
||||||
"HDMI-A-1,3440x1440@99.98,auto,1"
|
|
||||||
",prefered,auto,1"
|
",prefered,auto,1"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# workspace = [
|
||||||
|
# "1,monitor:eDP-1"
|
||||||
|
# "2,monitor:eDP-1"
|
||||||
|
# "3,monitor:eDP-1"
|
||||||
|
# "4,monitor:eDP-1"
|
||||||
|
# "5,monitor:eDP-1"
|
||||||
|
# ];
|
||||||
|
|
||||||
env = [
|
env = [
|
||||||
"XDG_SESSION_TYPE,wayland"
|
"XDG_SESSION_TYPE,wayland"
|
||||||
"XDG_CURRENT_DESKTOP,Hyprland"
|
"XDG_CURRENT_DESKTOP,Hyprland"
|
||||||
@ -78,7 +91,7 @@ in {
|
|||||||
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
|
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
|
||||||
"ELECTRON_OZONE_PLATFORM_HINT,auto"
|
"ELECTRON_OZONE_PLATFORM_HINT,auto"
|
||||||
"GTK_THEME,FlatColor:dark"
|
"GTK_THEME,FlatColor:dark"
|
||||||
"GTK2_RC_FILES,/home/hadi/.local/share/themes/FlatColor/gtk-2.0/gtkrc"
|
"GTK2_RC_FILES,/home/dim/.local/share/themes/FlatColor/gtk-2.0/gtkrc"
|
||||||
"__GL_GSYNC_ALLOWED,0"
|
"__GL_GSYNC_ALLOWED,0"
|
||||||
"__GL_VRR_ALLOWED,0"
|
"__GL_VRR_ALLOWED,0"
|
||||||
"DISABLE_QT5_COMPAT,0"
|
"DISABLE_QT5_COMPAT,0"
|
||||||
@ -90,12 +103,12 @@ in {
|
|||||||
"XDG_SESSION_TYPE,wayland"
|
"XDG_SESSION_TYPE,wayland"
|
||||||
"SDL_VIDEODRIVER,wayland"
|
"SDL_VIDEODRIVER,wayland"
|
||||||
"CLUTTER_BACKEND,wayland"
|
"CLUTTER_BACKEND,wayland"
|
||||||
"AQ_DRM_DEVICES,/dev/dri/card2:/dev/dri/card1" # CHANGEME: Related to the GPU
|
# "AQ_DRM_DEVICES,/dev/dri/card2:/dev/dri/card1" # CHANGEME: Related to the GPU
|
||||||
];
|
];
|
||||||
|
|
||||||
cursor = {
|
cursor = {
|
||||||
no_hardware_cursors = true;
|
no_hardware_cursors = true;
|
||||||
default_monitor = "eDP-2";
|
default_monitor = "eDP-1";
|
||||||
};
|
};
|
||||||
|
|
||||||
general = {
|
general = {
|
||||||
@ -108,13 +121,15 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
decoration = {
|
decoration = {
|
||||||
|
blur = { enabled = if blur then "true" else "false"; };
|
||||||
|
shadow = {
|
||||||
|
enabled = true;
|
||||||
|
range = 20;
|
||||||
|
render_power = 3;
|
||||||
|
};
|
||||||
active_opacity = active-opacity;
|
active_opacity = active-opacity;
|
||||||
inactive_opacity = inactive-opacity;
|
inactive_opacity = inactive-opacity;
|
||||||
rounding = rounding;
|
rounding = rounding;
|
||||||
drop_shadow = true;
|
|
||||||
shadow_range = 20;
|
|
||||||
shadow_render_power = 3;
|
|
||||||
blur = { enabled = if blur then "true" else "false"; };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
master = {
|
master = {
|
||||||
@ -142,9 +157,9 @@ in {
|
|||||||
input = {
|
input = {
|
||||||
kb_layout = keyboardLayout;
|
kb_layout = keyboardLayout;
|
||||||
|
|
||||||
kb_options = "caps:escape";
|
# kb_options = "caps:escape";
|
||||||
follow_mouse = 1;
|
follow_mouse = 1;
|
||||||
sensitivity = 0.5;
|
sensitivity = 0;
|
||||||
repeat_delay = 300;
|
repeat_delay = 300;
|
||||||
repeat_rate = 50;
|
repeat_rate = 50;
|
||||||
numlock_by_default = true;
|
numlock_by_default = true;
|
||||||
@ -154,7 +169,6 @@ in {
|
|||||||
clickfinger_behavior = true;
|
clickfinger_behavior = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
systemd.user.targets.hyprland-session.Unit.Wants =
|
systemd.user.targets.hyprland-session.Unit.Wants =
|
||||||
|
|||||||
47
home/system/hyprland/windowrule.nix
Normal file
47
home/system/hyprland/windowrule.nix
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
wayland.windowManager.hyprland.settings = {
|
||||||
|
windowrulev2 = [
|
||||||
|
"workspace 2, class:^(emacs)$"
|
||||||
|
"workspace 3, class:^(kitty)$"
|
||||||
|
"workspace 9, class:^(org.qutebrowser.qutebrowser)$"
|
||||||
|
"workspace 9, title:^(Chromium)$"
|
||||||
|
"fullscreen, class:^(wlogout)$"
|
||||||
|
"float, class:^(Zotero)$"
|
||||||
|
"float, class:^(firefox)$,title:^(Certificate for )*$"
|
||||||
|
"float, class:^(firefox)$,title:^(.*Firefox — Sharing Indicator.*)$"
|
||||||
|
"float, class:^(firefox)$,title:^(.*Presensi Mahasiswa.*)$"
|
||||||
|
"float, class:(firefox),title:^(Extension)(.*)$"
|
||||||
|
"float, class:^(pcmanfm)$,title:^(Confirm File Replacing)$"
|
||||||
|
"float, class:^(nemo)$,title:^(Confirm File Replacing)$"
|
||||||
|
"float, class:^(nm-connection-editor)$"
|
||||||
|
"float, class:^(.*blueman-manager.*)$"
|
||||||
|
"size 530 300, class:^(.*blueman-manager.*)$"
|
||||||
|
"move 100%-w-20 40, class:^(.*blueman-manager.*)$"
|
||||||
|
"noborder, class:^(.*dg-desktop-portal-.*)$"
|
||||||
|
"noblur, class:^(.*dg-desktop-portal-.*)$"
|
||||||
|
"noshadow, class:^(.*dg-desktop-portal-.*)$"
|
||||||
|
"float, class:^(*.dg-desktop-portal-.*)$"
|
||||||
|
"pin, class:^(*.dg-desktop-portal-.*)$"
|
||||||
|
"pin, class:^(gcr-prompter)$"
|
||||||
|
"float, title:^(Volume Control)$"
|
||||||
|
"pin, title:^(Volume Control)$"
|
||||||
|
"size 560 340, title:^(Volume Control)$"
|
||||||
|
"move 100%-w-30 30, title:^(Volume Control)$"
|
||||||
|
"float, class:^(spotube)$"
|
||||||
|
"size 660 700, class:^(spotube)$"
|
||||||
|
"move 100%-w-20 40, class:^(spotube)$"
|
||||||
|
"float, title:^(pve - Proxmox Console - Chromium)$"
|
||||||
|
"float, class:^(thunderbird)$,title:^(Reminders)$"
|
||||||
|
"float, class:^(thunderbird)$,title:^(Edit Event:)$"
|
||||||
|
"float, class:^(thunderbird)$,title:^(An error has occurred)$"
|
||||||
|
"float, class:^(thunar)$,title:^(File Operation Progress)$"
|
||||||
|
"float, class:^(org.kde.polkit-kde-authentication-agent-1)$"
|
||||||
|
"size 60% 55%, class:^(nwg-look)$"
|
||||||
|
"center, class:^(nwg-look)$"
|
||||||
|
"fullscreen, class:^(cool-retro-term.cool-retro-term)$"
|
||||||
|
"float, class:^(virt-manager)$,title:^(Virtual Machine Manager)$"
|
||||||
|
"size 440 220, class:^(virt-manager)$,title:^(Virtual Machine Manager)$"
|
||||||
|
"center, class:^(virt-manager)$,title:^(Virtual Machine Manager)$"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@ -2,7 +2,7 @@
|
|||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
let
|
let
|
||||||
foreground = "rgba(216, 222, 233, 0.70)";
|
foreground = "rgba(216, 222, 233, 0.70)";
|
||||||
imageStr = toString config.stylix.image;
|
imageStr = "screenshow"; # toString config.stylix.image;
|
||||||
font = config.stylix.fonts.serif.name;
|
font = config.stylix.fonts.serif.name;
|
||||||
in {
|
in {
|
||||||
programs.hyprlock = {
|
programs.hyprlock = {
|
||||||
@ -14,76 +14,76 @@ in {
|
|||||||
disable_loading_bar = false;
|
disable_loading_bar = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
# BACKGROUND
|
# # BACKGROUND
|
||||||
background = {
|
# background = {
|
||||||
monitor = "";
|
# monitor = "";
|
||||||
path = imageStr;
|
# path = imageStr;
|
||||||
blur_passes = 0;
|
# blur_passes = 0;
|
||||||
contrast = 0.8916;
|
# contrast = 0.8916;
|
||||||
brightness = 0.7172;
|
# brightness = 0.7172;
|
||||||
vibrancy = 0.1696;
|
# vibrancy = 0.1696;
|
||||||
vibrancy_darkness = 0.0;
|
# vibrancy_darkness = 0.0;
|
||||||
};
|
# };
|
||||||
|
#
|
||||||
label = [
|
# label = [
|
||||||
{
|
# {
|
||||||
# Day-Month-Date
|
# # Day-Month-Date
|
||||||
monitor = "";
|
# monitor = "";
|
||||||
text = ''cmd[update:1000] echo -e "$(date +"%A, %B %d")"'';
|
# text = ''cmd[update:1000] echo -e "$(date +"%A, %B %d")"'';
|
||||||
color = foreground;
|
# color = foreground;
|
||||||
font_size = 28;
|
# font_size = 28;
|
||||||
font_family = font + " Bold";
|
# font_family = font + " Bold";
|
||||||
position = "0, 490";
|
# position = "0, 490";
|
||||||
halign = "center";
|
# halign = "center";
|
||||||
valign = "center";
|
# valign = "center";
|
||||||
}
|
# }
|
||||||
# Time
|
# # Time
|
||||||
{
|
# {
|
||||||
monitor = "";
|
# monitor = "";
|
||||||
text = ''cmd[update:1000] echo "<span>$(date +"%I:%M")</span>"'';
|
# text = ''cmd[update:1000] echo "<span>$(date +"%I:%M")</span>"'';
|
||||||
color = foreground;
|
# color = foreground;
|
||||||
font_size = 160;
|
# font_size = 160;
|
||||||
font_family = "steelfish outline regular";
|
# font_family = "steelfish outline regular";
|
||||||
position = "0, 370";
|
# position = "0, 370";
|
||||||
halign = "center";
|
# halign = "center";
|
||||||
valign = "center";
|
# valign = "center";
|
||||||
}
|
# }
|
||||||
# USER
|
# # USER
|
||||||
{
|
# {
|
||||||
monitor = "";
|
# monitor = "";
|
||||||
text = " $USER";
|
# text = " $USER";
|
||||||
color = foreground;
|
# color = foreground;
|
||||||
outline_thickness = 2;
|
# outline_thickness = 2;
|
||||||
dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
|
# dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
|
||||||
dots_spacing = 0.2; # Scale of dots' absolute size, 0.0 - 1.0
|
# dots_spacing = 0.2; # Scale of dots' absolute size, 0.0 - 1.0
|
||||||
dots_center = true;
|
# dots_center = true;
|
||||||
font_size = 18;
|
# font_size = 18;
|
||||||
font_family = font + " Bold";
|
# font_family = font + " Bold";
|
||||||
position = "0, -180";
|
# position = "0, -180";
|
||||||
halign = "center";
|
# halign = "center";
|
||||||
valign = "center";
|
# valign = "center";
|
||||||
}
|
# }
|
||||||
];
|
# ];
|
||||||
|
#
|
||||||
# INPUT FIELD
|
# # INPUT FIELD
|
||||||
input-field = [{
|
# input-field = [{
|
||||||
monitor = "";
|
# monitor = "";
|
||||||
size = "300, 60";
|
# size = "300, 60";
|
||||||
outline_thickness = 2;
|
# outline_thickness = 2;
|
||||||
dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
|
# dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
|
||||||
dots_spacing = 0.2; # Scale of dots' absolute size, 0.0 - 1.0
|
# dots_spacing = 0.2; # Scale of dots' absolute size, 0.0 - 1.0
|
||||||
dots_center = true;
|
# dots_center = true;
|
||||||
outer_color = "rgba(255, 255, 255, 0)";
|
# outer_color = "rgba(255, 255, 255, 0)";
|
||||||
inner_color = "rgba(255, 255, 255, 0.1)";
|
# inner_color = "rgba(255, 255, 255, 0.1)";
|
||||||
font_color = foreground;
|
# font_color = foreground;
|
||||||
fade_on_empty = false;
|
# fade_on_empty = false;
|
||||||
font_family = font + " Bold";
|
# font_family = font + " Bold";
|
||||||
placeholder_text = "<i>🔒 Enter Password</i>";
|
# placeholder_text = "<i>🔒 Enter Password</i>";
|
||||||
hide_input = false;
|
# hide_input = false;
|
||||||
position = "0, -250";
|
# position = "0, -250";
|
||||||
halign = "center";
|
# halign = "center";
|
||||||
valign = "center";
|
# valign = "center";
|
||||||
}];
|
# }];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,13 +24,14 @@ let
|
|||||||
|
|
||||||
location = config.var.location;
|
location = config.var.location;
|
||||||
username = config.var.username;
|
username = config.var.username;
|
||||||
|
weatherapikey = config.var.weatherapikey;
|
||||||
in {
|
in {
|
||||||
wayland.windowManager.hyprland.settings.exec-once =
|
wayland.windowManager.hyprland.settings.exec-once =
|
||||||
[ "${pkgs.hyprpanel}/bin/hyprpanel" ];
|
[ "${pkgs.hyprpanel}/bin/hyprpanel" ];
|
||||||
|
|
||||||
home.packages = with pkgs; [ hyprpanel libnotify ];
|
home.packages = with pkgs; [ hyprpanel libnotify ];
|
||||||
|
|
||||||
home.file.".cache/ags/hyprpanel/options.json" = {
|
home.file.".config/hyprpanel/config.json" = {
|
||||||
text = # json
|
text = # json
|
||||||
''
|
''
|
||||||
{
|
{
|
||||||
@ -101,17 +102,18 @@ in {
|
|||||||
"theme.bar.buttons.y_margins": "${
|
"theme.bar.buttons.y_margins": "${
|
||||||
if floating && transparent then "0" else "8"
|
if floating && transparent then "0" else "8"
|
||||||
}px",
|
}px",
|
||||||
"theme.bar.buttons.spacing": "0.3em",
|
"theme.bar.buttons.spacing": "0.2em",
|
||||||
"theme.bar.buttons.radius": "${
|
"theme.bar.buttons.radius": "${
|
||||||
if transparent then toString rounding else toString (rounding - 8)
|
if transparent then toString rounding else toString (rounding - 8)
|
||||||
}px",
|
}px",
|
||||||
"theme.bar.floating": ${if floating then "true" else "false"},
|
"theme.bar.floating": ${if floating then "true" else "false"},
|
||||||
"theme.bar.buttons.padding_x": "0.8rem",
|
"theme.bar.buttons.padding_x": "0.4rem",
|
||||||
"theme.bar.buttons.padding_y": "0.4rem",
|
"theme.bar.buttons.padding_y": "0.2rem",
|
||||||
|
|
||||||
"theme.bar.buttons.workspaces.hover": "${accent-alt}",
|
"theme.bar.buttons.workspaces.hover": "${accent-alt}",
|
||||||
"theme.bar.buttons.workspaces.active": "${accent}",
|
"theme.bar.buttons.workspaces.active": "${accent}",
|
||||||
"theme.bar.buttons.workspaces.available": "${background}",
|
"theme.bar.buttons.workspaces.available": "${accent-alt}",
|
||||||
|
|
||||||
|
|
||||||
"theme.bar.margin_top": "${
|
"theme.bar.margin_top": "${
|
||||||
if position == "top" then toString (gaps-in * 2) else "0"
|
if position == "top" then toString (gaps-in * 2) else "0"
|
||||||
@ -125,14 +127,14 @@ in {
|
|||||||
"bar.launcher.icon": "",
|
"bar.launcher.icon": "",
|
||||||
"theme.bar.transparent": ${if transparent then "true" else "false"},
|
"theme.bar.transparent": ${if transparent then "true" else "false"},
|
||||||
"bar.workspaces.show_numbered": false,
|
"bar.workspaces.show_numbered": false,
|
||||||
"bar.workspaces.workspaces": 5,
|
"bar.workspaces.show_icons": false,
|
||||||
"bar.workspaces.monitorSpecific": true,
|
"bar.workspaces.workspaces": 9,
|
||||||
"bar.workspaces.hideUnoccupied": false,
|
"bar.workspaces.hideUnoccupied": false,
|
||||||
"bar.windowtitle.label": true,
|
"bar.windowtitle.label": true,
|
||||||
"bar.volume.label": false,
|
"bar.volume.label": false,
|
||||||
"bar.network.truncation_size": 12,
|
"bar.network.truncation_size": 12,
|
||||||
"bar.bluetooth.label": false,
|
"bar.bluetooth.label": false,
|
||||||
"bar.clock.format": "%a %b %d %I:%M %p",
|
"bar.clock.format": "%a %b %d %H:%M",
|
||||||
"bar.notifications.show_total": true,
|
"bar.notifications.show_total": true,
|
||||||
"theme.notification.border_radius": "${toString rounding}px",
|
"theme.notification.border_radius": "${toString rounding}px",
|
||||||
"theme.osd.enable": true,
|
"theme.osd.enable": true,
|
||||||
@ -142,14 +144,14 @@ in {
|
|||||||
"theme.osd.margins": "0px 0px 0px 10px",
|
"theme.osd.margins": "0px 0px 0px 10px",
|
||||||
"theme.osd.muted_zero": true,
|
"theme.osd.muted_zero": true,
|
||||||
"menus.clock.weather.location": "${location}",
|
"menus.clock.weather.location": "${location}",
|
||||||
"menus.clock.weather.key": "myapikey",
|
"menus.clock.weather.key": "${weatherapikey}",
|
||||||
"menus.clock.weather.unit": "metric",
|
"menus.clock.weather.unit": "metric",
|
||||||
"menus.dashboard.powermenu.avatar.image": "/home/${username}/.profile_picture.png",
|
"menus.dashboard.powermenu.avatar.image": "/home/${username}/.profile_picture.png",
|
||||||
"menus.dashboard.powermenu.confirmation": false,
|
"menus.dashboard.powermenu.confirmation": false,
|
||||||
|
|
||||||
"menus.dashboard.shortcuts.left.shortcut1.icon": "",
|
"menus.dashboard.shortcuts.left.shortcut1.icon": "",
|
||||||
"menus.dashboard.shortcuts.left.shortcut1.command": "qutebrowser",
|
"menus.dashboard.shortcuts.left.shortcut1.command": "firefox",
|
||||||
"menus.dashboard.shortcuts.left.shortcut1.tooltip": "Qutebrowser",
|
"menus.dashboard.shortcuts.left.shortcut1.tooltip": "firefox",
|
||||||
"menus.dashboard.shortcuts.left.shortcut2.icon": "",
|
"menus.dashboard.shortcuts.left.shortcut2.icon": "",
|
||||||
"menus.dashboard.shortcuts.left.shortcut2.command": "caffeine",
|
"menus.dashboard.shortcuts.left.shortcut2.command": "caffeine",
|
||||||
"menus.dashboard.shortcuts.left.shortcut2.tooltip": "Caffeine",
|
"menus.dashboard.shortcuts.left.shortcut2.tooltip": "Caffeine",
|
||||||
@ -167,17 +169,17 @@ in {
|
|||||||
"menus.dashboard.shortcuts.right.shortcut3.tooltip": "Screenshot",
|
"menus.dashboard.shortcuts.right.shortcut3.tooltip": "Screenshot",
|
||||||
|
|
||||||
"menus.dashboard.directories.left.directory1.label": " Downloads",
|
"menus.dashboard.directories.left.directory1.label": " Downloads",
|
||||||
"menus.dashboard.directories.left.directory1.command": "bash -c \"thunar $HOME/Downloads/\"",
|
"menus.dashboard.directories.left.directory1.command": "bash -c \"nemo $HOME/Downloads/\"",
|
||||||
"menus.dashboard.directories.left.directory2.label": " Pictures",
|
"menus.dashboard.directories.left.directory2.label": " Pictures",
|
||||||
"menus.dashboard.directories.left.directory2.command": "bash -c \"thunar $HOME/Pictures/\"",
|
"menus.dashboard.directories.left.directory2.command": "bash -c \"nemo $HOME/Pictures/\"",
|
||||||
"menus.dashboard.directories.left.directory3.label": " Documents",
|
"menus.dashboard.directories.left.directory3.label": " Documents",
|
||||||
"menus.dashboard.directories.left.directory3.command": "bash -c \"thunar $HOME/Documents/\"",
|
"menus.dashboard.directories.left.directory3.command": "bash -c \"nemo $HOME/Documents/\"",
|
||||||
"menus.dashboard.directories.right.directory1.label": " Home",
|
"menus.dashboard.directories.right.directory1.label": " Home",
|
||||||
"menus.dashboard.directories.right.directory1.command": "bash -c \"thunar $HOME/\"",
|
"menus.dashboard.directories.right.directory1.command": "bash -c \"nemo $HOME/\"",
|
||||||
"menus.dashboard.directories.right.directory2.label": " Projects",
|
"menus.dashboard.directories.right.directory2.label": " Projects",
|
||||||
"menus.dashboard.directories.right.directory2.command": "bash -c \"thunar $HOME/dev/\"",
|
"menus.dashboard.directories.right.directory2.command": "bash -c \"nemo $HOME/dev/\"",
|
||||||
"menus.dashboard.directories.right.directory3.label": " Config",
|
"menus.dashboard.directories.right.directory3.label": " Config",
|
||||||
"menus.dashboard.directories.right.directory3.command": "bash -c \"thunar $HOME/.config/\"",
|
"menus.dashboard.directories.right.directory3.command": "bash -c \"nemo $HOME/.config/\"",
|
||||||
|
|
||||||
"theme.bar.menus.monochrome": true,
|
"theme.bar.menus.monochrome": true,
|
||||||
"wallpaper.enable": false,
|
"wallpaper.enable": false,
|
||||||
|
|||||||
@ -3,8 +3,8 @@
|
|||||||
xdg.mimeApps = {
|
xdg.mimeApps = {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultApplications = {
|
defaultApplications = {
|
||||||
"text/markdown" = "nvim.desktop";
|
"text/markdown" = "neovide.desktop";
|
||||||
"text/plain" = "nvim.desktop";
|
"text/plain" = "neovide.desktop";
|
||||||
"text/x-shellscript" = "nvim.desktop";
|
"text/x-shellscript" = "nvim.desktop";
|
||||||
"text/x-python" = "nvim.desktop";
|
"text/x-python" = "nvim.desktop";
|
||||||
"text/x-go" = "nvim.desktop";
|
"text/x-go" = "nvim.desktop";
|
||||||
@ -23,11 +23,12 @@
|
|||||||
"image/jpeg" = "imv.desktop";
|
"image/jpeg" = "imv.desktop";
|
||||||
"image/jpg" = "imv.desktop";
|
"image/jpg" = "imv.desktop";
|
||||||
"image/webp" = "imv.desktop";
|
"image/webp" = "imv.desktop";
|
||||||
"image/gif" = "org.qutebrowser.qutebrowser.desktop";
|
"image/gif" = "imv.desktop";
|
||||||
"x-scheme-handler/http" = "org.qutebrowser.qutebrowser.desktop";
|
"x-scheme-handler/http" = "firefox.desktop";
|
||||||
"x-scheme-handler/https" = "org.qutebrowser.qutebrowser.desktop";
|
"x-scheme-handler/https" = "firefox.desktop";
|
||||||
"text/html" = "org.qutebrowser.qutebrowser.desktop";
|
"text/html" = "firefox.desktop";
|
||||||
"application/pdf" = "zathura.desktop";
|
"text/csv" = "neovide.desktop";
|
||||||
|
"application/pdf" = "org.pwmt.zathura.desktop";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
{ config, ... }: {
|
{ config, ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
../../nixos/nvidia.nix # CHANGEME: Remove this line if you don't have an Nvidia GPU
|
# ../../nixos/nvidia.nix # CHANGEME: Remove this line if you don't have an Nvidia GPU
|
||||||
../../nixos/prime.nix # CHANGEME: Remove this line if you don't have an Nvidia GPU
|
# ../../nixos/prime.nix # CHANGEME: Remove this line if you don't have an Nvidia GPU
|
||||||
|
|
||||||
../../nixos/audio.nix
|
../../nixos/audio.nix
|
||||||
../../nixos/auto-upgrade.nix
|
../../nixos/auto-upgrade.nix
|
||||||
@ -15,6 +15,8 @@
|
|||||||
../../nixos/tuigreet.nix
|
../../nixos/tuigreet.nix
|
||||||
../../nixos/users.nix
|
../../nixos/users.nix
|
||||||
../../nixos/utils.nix
|
../../nixos/utils.nix
|
||||||
|
../../nixos/virtualisation.nix
|
||||||
|
../../nixos/tailscale.nix
|
||||||
../../nixos/xdg-portal.nix
|
../../nixos/xdg-portal.nix
|
||||||
../../nixos/variables-config.nix
|
../../nixos/variables-config.nix
|
||||||
|
|
||||||
@ -26,6 +28,11 @@
|
|||||||
|
|
||||||
home-manager.users."${config.var.username}" = import ./home.nix;
|
home-manager.users."${config.var.username}" = import ./home.nix;
|
||||||
|
|
||||||
|
# users.users."${config.var.username}".extraGroups = [ "scanner" "lp" ];
|
||||||
|
# hardware.sane.enable = true;
|
||||||
|
|
||||||
|
networking.hosts = { "192.168.122.52" = [ "websiteku.lokal" ]; };
|
||||||
|
|
||||||
# Don't touch this
|
# Don't touch this
|
||||||
system.stateVersion = "24.05";
|
system.stateVersion = "24.05";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,26 +1,32 @@
|
|||||||
# 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, ... }: {
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
|
||||||
|
|
||||||
boot = {
|
{
|
||||||
initrd.availableKernelModules =
|
imports =
|
||||||
[ "nvme" "xhci_pci" "usb_storage" "sd_mod" ];
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
initrd.kernelModules = [ ];
|
];
|
||||||
kernelModules = [ "kvm-amd" ];
|
|
||||||
extraModulePackages = [ ];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||||
device = "/dev/disk/by-uuid/6c2487ec-20ff-4ce3-9396-281c2094aba1";
|
boot.initrd.kernelModules = [ ];
|
||||||
fsType = "ext4";
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
};
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/" =
|
||||||
device = "/dev/disk/by-uuid/B4EA-C54F";
|
{ device = "/dev/disk/by-uuid/3b81e71c-24c3-46f7-9853-b721d5fe40f1";
|
||||||
fsType = "vfat";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
fileSystems."/home" =
|
||||||
|
{ device = "/dev/disk/by-uuid/e35041c3-5cbe-461c-a8cd-2e9cd9b319b5";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/DC41-C56D";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
|
||||||
swapDevices = [ ];
|
swapDevices = [ ];
|
||||||
|
|
||||||
@ -29,10 +35,10 @@
|
|||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
networking.useDHCP = lib.mkDefault true;
|
networking.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.eno1.useDHCP = lib.mkDefault true;
|
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
|
||||||
# networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
hardware.cpu.amd.updateMicrocode =
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
{ pkgs, config, ... }: {
|
{ pkgs, config, inputs, ... }: {
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./variables.nix
|
./variables.nix
|
||||||
@ -6,16 +6,19 @@
|
|||||||
# Programs
|
# Programs
|
||||||
../../home/programs/kitty
|
../../home/programs/kitty
|
||||||
../../home/programs/nvim
|
../../home/programs/nvim
|
||||||
../../home/programs/qutebrowser
|
# ../../home/programs/qutebrowser
|
||||||
../../home/programs/shell
|
../../home/programs/shell
|
||||||
|
../../home/programs/pass
|
||||||
../../home/programs/fetch
|
../../home/programs/fetch
|
||||||
../../home/programs/git
|
../../home/programs/git
|
||||||
../../home/programs/spicetify
|
../../home/programs/spicetify
|
||||||
../../home/programs/nextcloud
|
../../home/programs/nextcloud
|
||||||
../../home/programs/yazi
|
../../home/programs/yazi
|
||||||
../../home/programs/markdown
|
# ../../home/programs/markdown
|
||||||
../../home/programs/thunar
|
../../home/programs/thunar
|
||||||
../../home/programs/lazygit
|
../../home/programs/lazygit
|
||||||
|
../../home/programs/office
|
||||||
|
../../home/programs/firefox
|
||||||
|
|
||||||
# Scripts
|
# Scripts
|
||||||
../../home/scripts # All scripts
|
../../home/scripts # All scripts
|
||||||
@ -35,7 +38,7 @@
|
|||||||
../../home/system/clipman
|
../../home/system/clipman
|
||||||
../../home/system/tofi
|
../../home/system/tofi
|
||||||
|
|
||||||
./secrets # CHANGEME: You should probably remove this line, this is where I store my secrets
|
# ./secrets # CHANGEME: You should probably remove this line, this is where I store my secrets
|
||||||
];
|
];
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
@ -44,38 +47,83 @@
|
|||||||
|
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
# Apps
|
# Apps
|
||||||
discord # Chat
|
#discord # Chat
|
||||||
bitwarden # Password manager
|
# bitwarden # Password manager
|
||||||
vlc # Video player
|
mpv # Video player
|
||||||
blanket # White-noise app
|
pcmanfm
|
||||||
|
xarchiver
|
||||||
|
#blanket # White-noise app
|
||||||
|
|
||||||
# Dev
|
# Dev
|
||||||
go
|
go
|
||||||
nodejs
|
nodejs
|
||||||
python3
|
(python3.withPackages (ps:
|
||||||
|
with ps; [
|
||||||
|
pip
|
||||||
|
isort
|
||||||
|
pyyaml
|
||||||
|
(buildPythonPackage {
|
||||||
|
pname = "docker-sdp";
|
||||||
|
version = "0.2.15";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "neuroforgede";
|
||||||
|
repo = "docker-stack-deploy";
|
||||||
|
rev = "fa8c23d";
|
||||||
|
sha256 = "sha256-caff7K4++eQJE/7kbKJb8DgI6aWJdiHBbdV1+46aFMs=";
|
||||||
|
};
|
||||||
|
doCheck = false;
|
||||||
|
buildInputs = [ pip ];
|
||||||
|
})
|
||||||
|
]))
|
||||||
jq
|
jq
|
||||||
figlet
|
figlet
|
||||||
just
|
just
|
||||||
|
ddev
|
||||||
|
mkcert
|
||||||
|
|
||||||
# Utils
|
# Utils
|
||||||
zip
|
zip
|
||||||
|
xz
|
||||||
unzip
|
unzip
|
||||||
|
p7zip
|
||||||
|
unrar
|
||||||
optipng
|
optipng
|
||||||
pfetch
|
pfetch
|
||||||
pandoc
|
pandoc
|
||||||
btop
|
btop
|
||||||
|
bottom
|
||||||
|
iotop
|
||||||
|
iftop
|
||||||
|
lsof
|
||||||
|
sysstat
|
||||||
|
lm_sensors
|
||||||
|
ethtool
|
||||||
|
pciutils
|
||||||
|
usbutils
|
||||||
|
wireguard-tools
|
||||||
|
inetutils
|
||||||
|
gdu
|
||||||
|
enchant
|
||||||
|
|
||||||
# Just cool
|
# Just cool
|
||||||
peaclock
|
peaclock
|
||||||
cbonsai
|
cbonsai
|
||||||
pipes
|
pipes
|
||||||
cmatrix
|
cmatrix
|
||||||
cava
|
# cava
|
||||||
|
|
||||||
# Backup
|
# Backup
|
||||||
vscode
|
# zed-editor
|
||||||
firefox
|
|
||||||
neovide
|
neovide
|
||||||
|
inkscape-with-extensions
|
||||||
|
# gimp-with-plugins
|
||||||
|
gimp
|
||||||
|
sqlitebrowser
|
||||||
|
sqlite
|
||||||
|
emacs29-pgtk
|
||||||
|
zotero_7
|
||||||
|
chromium
|
||||||
|
# inputs.zen-browser.packages."${pkgs.system}"
|
||||||
];
|
];
|
||||||
|
|
||||||
# Import my profile picture, used by the hyprpanel dashboard
|
# Import my profile picture, used by the hyprpanel dashboard
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 213 KiB |
@ -2,21 +2,29 @@
|
|||||||
imports = [ ../../nixos/variables-config.nix ];
|
imports = [ ../../nixos/variables-config.nix ];
|
||||||
|
|
||||||
config.var = {
|
config.var = {
|
||||||
hostname = "nixy";
|
hostname = "dark";
|
||||||
username = "hadi";
|
username = "dim";
|
||||||
|
uid = 1000;
|
||||||
|
hashedPassword =
|
||||||
|
"$y$j9T$OqKMt8etf8DgTrZhN9jzy/$biMoM3P.WPZMpk0DAK.QhaHjGOL23pEgxlSvfu9LEPD";
|
||||||
configDirectory = "/home/" + config.var.username
|
configDirectory = "/home/" + config.var.username
|
||||||
+ "/.config/nixos"; # The path of the nixos configuration directory
|
+ "/.config/nixos"; # The path of the nixos configuration directory
|
||||||
|
|
||||||
keyboardLayout = "fr";
|
keyboardLayout = "us";
|
||||||
|
|
||||||
location = "Paris";
|
location = "Tangerang";
|
||||||
timeZone = "Europe/Paris";
|
timeZone = "Asia/Jakarta";
|
||||||
defaultLocale = "en_US.UTF-8";
|
defaultLocale = "en_US.UTF-8";
|
||||||
extraLocale = "fr_FR.UTF-8";
|
extraLocale = "id_ID.UTF-8";
|
||||||
|
weatherapikey = "b13ad03a98f04a8ea5620114240412";
|
||||||
|
|
||||||
git = {
|
git = {
|
||||||
username = "Hadi";
|
username = "dim";
|
||||||
email = "112569860+anotherhadi@users.noreply.github.com";
|
email = "dbrw@dark";
|
||||||
|
signing = {
|
||||||
|
key = "D8EDD65BCB54AC8719BE4EBD8D5D880EB08F1544";
|
||||||
|
signByDefault = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
autoUpgrade = false;
|
autoUpgrade = false;
|
||||||
|
|||||||
@ -15,7 +15,11 @@
|
|||||||
noto-fonts
|
noto-fonts
|
||||||
noto-fonts-cjk-sans
|
noto-fonts-cjk-sans
|
||||||
noto-fonts-emoji
|
noto-fonts-emoji
|
||||||
(nerdfonts.override { fonts = [ "FiraCode" "Meslo" ]; })
|
victor-mono
|
||||||
|
# (nerdfonts.override { fonts = [ "FiraCode" "Meslo" "VictorMono" ]; })
|
||||||
|
nerd-fonts.victor-mono
|
||||||
|
nerd-fonts.fira-code
|
||||||
|
nerd-fonts.meslo-lg
|
||||||
openmoji-color
|
openmoji-color
|
||||||
twemoji-color-font
|
twemoji-color-font
|
||||||
inputs.apple-fonts.packages.${pkgs.system}.sf-pro-nerd
|
inputs.apple-fonts.packages.${pkgs.system}.sf-pro-nerd
|
||||||
|
|||||||
@ -6,11 +6,12 @@
|
|||||||
systemd-boot = {
|
systemd-boot = {
|
||||||
enable = true;
|
enable = true;
|
||||||
consoleMode = "auto";
|
consoleMode = "auto";
|
||||||
|
configurationLimit = 6;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
tmp.cleanOnBoot = true;
|
tmp.cleanOnBoot = true;
|
||||||
kernelPackages =
|
kernelPackages =
|
||||||
pkgs.linuxPackages_latest; # _zen, _hardened, _rt, _rt_latest, etc.
|
pkgs.linuxPackages_zen; # _zen, _hardened, _rt, _rt_latest, etc.
|
||||||
|
|
||||||
# Silent boot
|
# Silent boot
|
||||||
kernelParams = [
|
kernelParams = [
|
||||||
|
|||||||
4
nixos/tailscale.nix
Normal file
4
nixos/tailscale.nix
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
environment.systemPackages = with pkgs; [ tailscale tailscale-systray ];
|
||||||
|
services.tailscale.enable = true;
|
||||||
|
}
|
||||||
@ -9,6 +9,7 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
security.pam.services.greetd.enableGnomeKeyring = true;
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [ greetd.tuigreet ];
|
environment.systemPackages = with pkgs; [ greetd.tuigreet ];
|
||||||
|
|
||||||
|
|||||||
@ -1,13 +1,26 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
let username = config.var.username;
|
let
|
||||||
|
username = config.var.username;
|
||||||
|
hashedPassword = config.var.hashedPassword;
|
||||||
|
userId = config.var.uid;
|
||||||
in {
|
in {
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
users = {
|
users = {
|
||||||
defaultUserShell = pkgs.zsh;
|
defaultUserShell = pkgs.zsh;
|
||||||
users.${username} = {
|
users.${username} = {
|
||||||
|
hashedPassword = "${hashedPassword}";
|
||||||
|
uid = userId;
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "${username} account";
|
description = "${username} account";
|
||||||
extraGroups = [ "networkmanager" "wheel" ];
|
extraGroups = [
|
||||||
|
"networkmanager"
|
||||||
|
"wheel"
|
||||||
|
"audio"
|
||||||
|
"video"
|
||||||
|
"input"
|
||||||
|
"docker"
|
||||||
|
"libvirtd"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,14 +6,6 @@ in {
|
|||||||
|
|
||||||
networking.hostName = hostname;
|
networking.hostName = hostname;
|
||||||
|
|
||||||
services = {
|
|
||||||
xserver = {
|
|
||||||
enable = true;
|
|
||||||
xkb.layout = keyboardLayout;
|
|
||||||
xkb.variant = "";
|
|
||||||
};
|
|
||||||
gnome.gnome-keyring.enable = true;
|
|
||||||
};
|
|
||||||
console.keyMap = keyboardLayout;
|
console.keyMap = keyboardLayout;
|
||||||
|
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
@ -30,6 +22,7 @@ in {
|
|||||||
upower.enable = true;
|
upower.enable = true;
|
||||||
power-profiles-daemon.enable = true;
|
power-profiles-daemon.enable = true;
|
||||||
udisks2.enable = true;
|
udisks2.enable = true;
|
||||||
|
devmon.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Faster rebuilding
|
# Faster rebuilding
|
||||||
@ -42,6 +35,18 @@ in {
|
|||||||
nixos.enable = false;
|
nixos.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Better caps2esc
|
||||||
|
services.interception-tools = {
|
||||||
|
enable = true;
|
||||||
|
udevmonConfig = ''
|
||||||
|
- JOB: "${pkgs.interception-tools}/bin/intercept -g $DEVNODE | ${pkgs.interception-tools-plugins.caps2esc}/bin/caps2esc | ${pkgs.interception-tools}/bin/uinput -d $DEVNODE"
|
||||||
|
DEVICE:
|
||||||
|
EVENTS:
|
||||||
|
EV_KEY: [KEY_CAPSLOCK, KEY_ESC]
|
||||||
|
'';
|
||||||
|
plugins = [ pkgs.interception-tools-plugins.caps2esc ];
|
||||||
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
fd
|
fd
|
||||||
bc
|
bc
|
||||||
@ -50,6 +55,10 @@ in {
|
|||||||
xdg-utils
|
xdg-utils
|
||||||
wget
|
wget
|
||||||
curl
|
curl
|
||||||
|
interception-tools
|
||||||
|
nix-tree
|
||||||
|
stevenblack-blocklist
|
||||||
|
wlay
|
||||||
];
|
];
|
||||||
|
|
||||||
services.logind.extraConfig = ''
|
services.logind.extraConfig = ''
|
||||||
|
|||||||
6
nixos/virtualisation.nix
Normal file
6
nixos/virtualisation.nix
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
{ pkgs, config, inputs, ... }: {
|
||||||
|
virtualisation.docker.enable = true;
|
||||||
|
virtualisation.libvirtd.enable = true;
|
||||||
|
programs.virt-manager.enable = true;
|
||||||
|
environment.systemPackages = with pkgs; [ virtiofsd ];
|
||||||
|
}
|
||||||
@ -1,6 +1,7 @@
|
|||||||
{ pkgs, inputs, ... }: {
|
{ pkgs, inputs, ... }: {
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
# targets.hyprlock.enable = false;
|
||||||
|
|
||||||
# Edited catppuccin
|
# Edited catppuccin
|
||||||
base16Scheme = {
|
base16Scheme = {
|
||||||
@ -30,14 +31,16 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
cursor = {
|
cursor = {
|
||||||
package = pkgs.bibata-cursors;
|
package = pkgs.phinger-cursors;
|
||||||
name = "Bibata-Modern-Ice";
|
name = "phinger-cursors-light";
|
||||||
|
# package = pkgs.banana-cursor;
|
||||||
|
# name = "Banana";
|
||||||
size = 24;
|
size = 24;
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts = {
|
fonts = {
|
||||||
monospace = {
|
monospace = {
|
||||||
package = pkgs.nerdfonts.override { fonts = [ "JetBrainsMono" ]; };
|
package = pkgs.nerd-fonts.jetbrains-mono;
|
||||||
name = "JetBrains Mono Nerd Font";
|
name = "JetBrains Mono Nerd Font";
|
||||||
};
|
};
|
||||||
sansSerif = {
|
sansSerif = {
|
||||||
@ -53,15 +56,15 @@
|
|||||||
name = "Noto Color Emoji";
|
name = "Noto Color Emoji";
|
||||||
};
|
};
|
||||||
sizes = {
|
sizes = {
|
||||||
applications = 13;
|
applications = 11;
|
||||||
desktop = 13;
|
desktop = 12;
|
||||||
popups = 13;
|
popups = 12;
|
||||||
terminal = 13;
|
terminal = 11;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
image = inputs.nixy-wallpapers + "/wallpapers/black-oil.png";
|
image = inputs.nixy-wallpapers + "/wallpapers/dark.png";
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
{
|
{
|
||||||
rounding = 15;
|
rounding = 5;
|
||||||
gaps-in = 10;
|
gaps-in = 5;
|
||||||
gaps-out = 10 * 2;
|
gaps-out = 5 * 2;
|
||||||
active-opacity = 1;
|
active-opacity = 1;
|
||||||
inactive-opacity = 0.89;
|
inactive-opacity = 0.89;
|
||||||
blur = true;
|
blur = true;
|
||||||
border-size = 3;
|
border-size = 2;
|
||||||
animation-speed = "medium"; # "fast" | "medium" | "slow"
|
animation-speed = "medium"; # "fast" | "medium" | "slow"
|
||||||
fetch = "nerdfetch"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
fetch = "nerdfetch"; # "nerdfetch" | "neofetch" | "pfetch" | "none"
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user