reestructuración
This commit is contained in:
parent
576b7c5798
commit
b29950097c
|
@ -16,7 +16,6 @@
|
|||
let
|
||||
system = "x86_64-linux";
|
||||
|
||||
packages = import ./pkgs;
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
};
|
||||
|
@ -65,10 +64,7 @@
|
|||
nixosConfigurations = configs "base" base;
|
||||
homeConfigurations = configs "home" home;
|
||||
|
||||
packages."${system}" = packages pkgs;
|
||||
|
||||
overlay = self: super: {
|
||||
local = packages super;
|
||||
unstable = import unstable {
|
||||
inherit(super) config system;
|
||||
};
|
||||
|
|
27
home/apps/default.nix
Normal file
27
home/apps/default.nix
Normal file
|
@ -0,0 +1,27 @@
|
|||
{ config, lib, pkgs, ...} :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps;
|
||||
in
|
||||
{
|
||||
options.local.apps.enable = mkEnableOption "Applications and tools";
|
||||
imports = [
|
||||
./docs.nix
|
||||
./editors
|
||||
./messaging.nix
|
||||
./multimedia.nix
|
||||
./steam
|
||||
./terminal
|
||||
./virtmanager.nix
|
||||
./web.nix
|
||||
];
|
||||
|
||||
config.local.apps = mkIf cfg.enable {
|
||||
docs.enable = mkDefault true;
|
||||
editors.enable = mkDefault true;
|
||||
messaging.enable = mkDefault true;
|
||||
multimedia.enable = mkDefault true;
|
||||
terminal.enable = mkDefault true;
|
||||
web.enable = mkDefault true;
|
||||
};
|
||||
}
|
20
home/apps/docs.nix
Normal file
20
home/apps/docs.nix
Normal file
|
@ -0,0 +1,20 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.docs;
|
||||
in
|
||||
{
|
||||
options.local.apps.docs.enable = mkEnableOption "Doc management tools";
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
libreoffice-fresh
|
||||
okular
|
||||
pdfarranger
|
||||
xournal
|
||||
];
|
||||
|
||||
xdg.mimeApps.defaultApplications = {
|
||||
"application/pdf" = [ "org.kde.okular.desktop" ];
|
||||
};
|
||||
};
|
||||
}
|
18
home/apps/editors/default.nix
Normal file
18
home/apps/editors/default.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.editors;
|
||||
in
|
||||
{
|
||||
options.local.apps.editors.enable = mkEnableOption "Text editors";
|
||||
|
||||
imports = [ ./vscode ];
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
local.apps.editors.vscode = mkDefault true;
|
||||
|
||||
neovim.enable = true;
|
||||
helix.enable = true;
|
||||
};
|
||||
|
||||
}
|
19
home/apps/editors/vscode/default.nix
Normal file
19
home/apps/editors/vscode/default.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
{config, lib, pkgs, ...} :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.editors.vscode;
|
||||
in
|
||||
{
|
||||
options.local.apps.editors.vscode.enable = mkEnableOption "VSCodium";
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = [ rust-analyzer ];
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
mutableExtensionsDir = false;
|
||||
extensions = attrValues (pkgs.callPackage ./extensions.nix {}).extensions;
|
||||
userSettings = import ./settings.nix
|
||||
};
|
||||
};
|
||||
}
|
208
home/apps/editors/vscode/extensions.nix
Normal file
208
home/apps/editors/vscode/extensions.nix
Normal file
|
@ -0,0 +1,208 @@
|
|||
{ lib, vscode-utils, vscode-extensions }: with vscode-utils; {
|
||||
extensions = {
|
||||
inherit (vscode-extensions.bbenoist) nix;
|
||||
inherit (vscode-extensions.ms-vscode) cpptools;
|
||||
|
||||
rust = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "rust-lang";
|
||||
name = "rust";
|
||||
version = "0.7.8";
|
||||
sha256 = "sha256-Y33agSNMVmaVCQdYd5mzwjiK5JTZTtzTkmSGTQrSNg0=";
|
||||
};
|
||||
meta.license = lib.licenses.mit;
|
||||
};
|
||||
|
||||
indenticator = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "sirtori";
|
||||
name = "indenticator";
|
||||
version = "0.7.0";
|
||||
sha256 = "sha256-J5iNO6V5US+GFyNjNNA5u9H2pKPozWKjQWcLAhl+BjY=";
|
||||
};
|
||||
meta.license = lib.licenses.mit;
|
||||
};
|
||||
|
||||
matlab = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "Gimly81";
|
||||
name = "matlab";
|
||||
version = "2.3.1";
|
||||
sha256 = "sha256-0vx5L9efxvubb+JFunJJKaPvSxfgmYZkDJOxpXAV6xs=";
|
||||
};
|
||||
meta.license = lib.licenses.mit;
|
||||
};
|
||||
|
||||
octave = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "toasty-technologies";
|
||||
name = "octave";
|
||||
version = "0.0.3";
|
||||
sha256 = "sha256-tbqblaBX+wqgasfGLsFp49xYxXi5CF39YPYs0QyANt0=";
|
||||
};
|
||||
};
|
||||
|
||||
riscv = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "zhwu95";
|
||||
name = "riscv";
|
||||
version = "0.0.8";
|
||||
sha256 = "sha256-PXaHSEXoN0ZboHIoDg37tZ+Gv6xFXP4wGBS3YS/53TY=";
|
||||
};
|
||||
};
|
||||
|
||||
pdf = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "tomoki1207";
|
||||
name = "pdf";
|
||||
version = "1.2.0";
|
||||
sha256 = "sha256-/2u2yfAmSVBvfXIMt2VokkeYH8q8Y9Ca9YSDuwwpkq0=";
|
||||
};
|
||||
};
|
||||
|
||||
vscode-icons = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "vscode-icons-team";
|
||||
name = "vscode-icons";
|
||||
version = "12.0.0";
|
||||
sha256 = "sha256-TQ/GPxNgbMBVlp+KNRd+M0vMxFSAjld/CCbVS9C1DuA=";
|
||||
};
|
||||
};
|
||||
|
||||
arm = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "dan-c-underwood";
|
||||
name = "arm";
|
||||
version = "1.7.4";
|
||||
sha256 = "sha256-gZBM980AoD+0wnfHXJK9sqCuuLtRY08JnO3Qdq/TRfc=";
|
||||
};
|
||||
};
|
||||
|
||||
verilogHDL = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "mshr-h";
|
||||
name = "VerilogHDL";
|
||||
version = "1.5.4";
|
||||
sha256 = "sha256-WxVEP37Z+hATTOZSozYSSGtDUSMKAO/nA6ORXbpjGMU=";
|
||||
};
|
||||
};
|
||||
|
||||
tcl = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "rashwell";
|
||||
name = "tcl";
|
||||
version = "0.1.0";
|
||||
sha256 = "sha256-k8I/W3g98r/YCyIURgm7hh+0Bm0lg4Mdh/r8HsPSoX0=";
|
||||
};
|
||||
};
|
||||
|
||||
txt-syntax = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "xshrim";
|
||||
name = "txt-syntax";
|
||||
version = "0.2.1";
|
||||
sha256 = "sha256-5MOHyTHAefD4X9dpMCJ1ArxBqvHRLfFjENXkIPmAw4M=";
|
||||
};
|
||||
};
|
||||
|
||||
linkerscript = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "ZixuanWang";
|
||||
name = "linkerscript";
|
||||
version = "1.0.2";
|
||||
sha256 = "sha256-J6j4tXJ+gQWGJnMiqoIqJT2kGs/m8Njjm9pX9NCvJWc=";
|
||||
};
|
||||
};
|
||||
|
||||
vscode-drawio = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "hediet";
|
||||
name = "vscode-drawio";
|
||||
version = "1.6.4";
|
||||
sha256 = "sha256-+VYdFk9VCp3KnvOASJ+jJSb1NBwykBlnd8EuSKw8sKI=";
|
||||
};
|
||||
};
|
||||
|
||||
better-comments = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "aaron-bond";
|
||||
name = "better-comments";
|
||||
version = "3.0.2";
|
||||
sha256 = "sha256-hQmA8PWjf2Nd60v5EAuqqD8LIEu7slrNs8luc3ePgZc=";
|
||||
};
|
||||
};
|
||||
|
||||
code-spell-checker = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "streetsidesoftware";
|
||||
name = "code-spell-checker";
|
||||
version = "2.10.1";
|
||||
sha256 = "sha256-FeYkSML6QYtuIHIbAovOqlPwkKfNkHr7IdMCWwkynQ0=";
|
||||
};
|
||||
};
|
||||
|
||||
vscode-todo-highlight = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "wayou";
|
||||
name = "vscode-todo-highlight";
|
||||
version = "1.0.5";
|
||||
sha256 = "sha256-CQVtMdt/fZcNIbH/KybJixnLqCsz5iF1U0k+GfL65Ok=";
|
||||
};
|
||||
};
|
||||
|
||||
clang-format = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "xaver";
|
||||
name = "clang-format";
|
||||
version = "1.9.0";
|
||||
sha256 = "sha256-q9DvkXbv+GTyeMVIyUQDK49Njsl9msbnOD1gyS4ljC8=";
|
||||
};
|
||||
};
|
||||
|
||||
markdown-all-in-one = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "yzhang";
|
||||
name = "markdown-all-in-one";
|
||||
version = "3.4.4";
|
||||
sha256 = "sha256-2lZfWP+yk0Dp8INLjlJY5ROGu0sLaWhb4fT+O9xGg0s=";
|
||||
};
|
||||
};
|
||||
|
||||
path-intellisense = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "christian-kohler";
|
||||
name = "path-intellisense";
|
||||
version = "2.8.1";
|
||||
sha256 = "sha256-lTKzMphkGgOG2XWqz3TW2G9sISBc/kG7oXqcIH8l+Mg=";
|
||||
};
|
||||
};
|
||||
|
||||
wav-preview = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "sukumo28";
|
||||
name = "wav-preview";
|
||||
version = "2.0.4";
|
||||
sha256 = "sha256-N7Scz3vjDws4oTMqrM3mSANeW85GGpBUY2xfZx+WezY=";
|
||||
};
|
||||
};
|
||||
|
||||
indent-rainbow = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "oderwat";
|
||||
name = "indent-rainbow";
|
||||
version = "8.3.1";
|
||||
sha256 = "sha256-dOicya0B2sriTcDSdCyhtp0Mcx5b6TUaFKVb0YU3jUc=";
|
||||
};
|
||||
};
|
||||
|
||||
python = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "ms-python";
|
||||
name = "python";
|
||||
version = "2022.19.13141010";
|
||||
sha256 = "sha256-8LbjpXLAAwK/oEPwpX+N1sWkSFNzQfWAkaBEQr49SQk=";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
# para obtener el sha: lib.fakeSha256
|
26
home/apps/editors/vscode/settings.nix
Normal file
26
home/apps/editors/vscode/settings.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
"files.autoSave" = "onFocusChange";
|
||||
"explorer.confirmDelete" = false;
|
||||
"explorer.confirmDragAndDrop" = false;
|
||||
"security.workspace.trust.enabled" = false;
|
||||
"workbench.startupEditor" = "none";
|
||||
"workbench.colorTheme" = "Default High Contrast";
|
||||
"editor.mouseWheelZoom" = true;
|
||||
"editor.cursorSmoothCaretAnimation" = true;
|
||||
"workbench.list.smoothScrolling" = true;
|
||||
"editor.smoothScrolling" = true;
|
||||
"editor.rulers" = [80 120];
|
||||
"workbench.iconTheme" = "vscode-icons";
|
||||
"workbench.editor.untitled.hint" = "hidden";
|
||||
"editor.autoClosingDelete" = "never";
|
||||
"editor.autoClosingOvertype" = "never";
|
||||
"editor.autoClosingBrackets" = "never";
|
||||
"editor.autoClosingQuotes" = "never";
|
||||
"indentRainbow.colors" = [
|
||||
"rgba(255,255,64,0.2)"
|
||||
"rgba(127,255,127,0.2)"
|
||||
"rgba(255,127,255,0.2)"
|
||||
"rgba(79,236,236,0.2)"
|
||||
];
|
||||
"hediet.vscode-drawio.theme" = "dark";
|
||||
}
|
18
home/apps/messaging.nix
Normal file
18
home/apps/messaging.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.messaging;
|
||||
in
|
||||
{
|
||||
options.local.apps.messaging.enable = mkEnableOption "Messaging apps";
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
discord
|
||||
signal-desktop
|
||||
tdesktop
|
||||
teams
|
||||
thunderbird
|
||||
zoom-us
|
||||
];
|
||||
};
|
||||
}
|
18
home/apps/multimedia.nix
Normal file
18
home/apps/multimedia.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.multimedia;
|
||||
in
|
||||
{
|
||||
options.local.apps.multimedia.enable = mkEnableOption "Video and audio tools";
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
deluge
|
||||
mpv
|
||||
obs-studio
|
||||
pavucontrol
|
||||
spotify
|
||||
vlc
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,13 +1,12 @@
|
|||
{pkgs, lib, config, ...}:
|
||||
with lib; let
|
||||
cfg = config.programs.steam;
|
||||
cfg = config.local.apps.steam;
|
||||
in {
|
||||
options = {
|
||||
programs.steam.enable = mkEnableOption "Weather to enable option or not.";
|
||||
};
|
||||
options.local.apps.steam.enable = mkEnableOption "Steam";
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = [
|
||||
(pkgs.callPackage ./package.nix {})
|
||||
protonup
|
||||
];
|
||||
};
|
||||
}
|
32
home/apps/terminal/default.nix
Normal file
32
home/apps/terminal/default.nix
Normal file
|
@ -0,0 +1,32 @@
|
|||
{config, lib, pkgs, ...} :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.terminal;
|
||||
in
|
||||
{
|
||||
options.local.apps.terminal.enable = mkEnableOption "Terminal emulator settings";
|
||||
config.programs = mkIf cfg.enable {
|
||||
kitty = {
|
||||
enable = true;
|
||||
extraConfig = import ./kitty.conf.nix;
|
||||
};
|
||||
|
||||
tmux = {
|
||||
enable = true;
|
||||
aggressiveResize = true;
|
||||
clock24 = true;
|
||||
escapeTime = 10;
|
||||
terminal = "xterm-256color";
|
||||
keyMode = "emacs";
|
||||
|
||||
extraConfig = ''
|
||||
set -g mouse on
|
||||
set -ga update-environment " LIFT_PID"
|
||||
set -g set-titles on
|
||||
set -g renumber-windows on
|
||||
set -sa terminal-overrides ',xterm-termite:RGB'
|
||||
set -g status-right "#{?window_bigger,[#{window_offset_x}#,#{window_offset_y}] ,} %H:%M %d-%b-%y"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
13
home/apps/virtmanager.nix
Normal file
13
home/apps/virtmanager.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.virtmanager;
|
||||
in
|
||||
{
|
||||
options.local.apps.virtmanager.enable = mkEnableOption "Virtmanager";
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
virt-manager
|
||||
];
|
||||
};
|
||||
}
|
26
home/apps/web.nix
Normal file
26
home/apps/web.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.apps.web;
|
||||
in
|
||||
{
|
||||
options.local.apps.web.enable = mkEnableOption "Browsers";
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
chromium
|
||||
firefox
|
||||
];
|
||||
|
||||
xdg.mimeApps.defaultApplications = {
|
||||
"application/x-extension-htm" = [ "firefox.desktop" ];
|
||||
"application/x-extension-html" = [ "firefox.desktop" ];
|
||||
"application/x-extension-shtml" = [ "firefox.desktop" ];
|
||||
"application/x-extension-xht" = [ "firefox.desktop" ];
|
||||
"application/x-extension-xhtml" = [ "firefox.desktop" ];
|
||||
"application/xhtml+xml" = [ "firefox.desktop" ];
|
||||
"text/html" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/http" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/https" = [ "firefox.desktop" ];
|
||||
};
|
||||
};
|
||||
}
|
33
home/cli.nix
Normal file
33
home/cli.nix
Normal file
|
@ -0,0 +1,33 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
{
|
||||
programs = {
|
||||
zsh = {
|
||||
enable = true;
|
||||
enableSyntaxHighlighting = true;
|
||||
initExtra = import ./zshrc.nix pkgs;
|
||||
};
|
||||
git = {
|
||||
enable = true;
|
||||
userEmail = "fabian@cluster451.org";
|
||||
userName = "Fabián Montero";
|
||||
signing.key = "E77A808BF9A955D668EEEA6473FA9C9CB5F0249B";
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs;
|
||||
[
|
||||
calc
|
||||
file
|
||||
gcc
|
||||
htop
|
||||
killall
|
||||
man-pages
|
||||
man-pages-posix
|
||||
tree
|
||||
units
|
||||
unzip
|
||||
usbutils
|
||||
zip
|
||||
];
|
||||
}
|
|
@ -4,11 +4,13 @@ with lib;
|
|||
{
|
||||
imports = [
|
||||
(hm-isolation.homeManagerModule)
|
||||
./apps
|
||||
./allowUnfreeWhitelist.nix
|
||||
./fonts.nix
|
||||
./gui
|
||||
./isolation.nix
|
||||
./options.nix
|
||||
./path.nix
|
||||
./cli.nix
|
||||
./systemd
|
||||
];
|
||||
|
||||
|
@ -38,19 +40,14 @@ with lib;
|
|||
"unstable".flake = unstable;
|
||||
};
|
||||
|
||||
programs = {
|
||||
home-manager.enable = true;
|
||||
neovim.enable = true;
|
||||
zsh = {
|
||||
enable = true;
|
||||
enableSyntaxHighlighting = true;
|
||||
initExtra = import ./zshrc.nix pkgs;
|
||||
};
|
||||
git = {
|
||||
enable = true;
|
||||
userEmail = "fabian@cluster451.org";
|
||||
userName = "Fabián Montero";
|
||||
signing.key = "E77A808BF9A955D668EEEA6473FA9C9CB5F0249B";
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
local = {
|
||||
apps.enable = mkDefault (!config.home.isolation.active);
|
||||
|
||||
gui = {
|
||||
enable = mkDefault true;
|
||||
desktop = mkDefault (!config.home.isolation.active);
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,8 +1,14 @@
|
|||
{ config, pkgs, lib, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.gui.autorandr;
|
||||
in
|
||||
{
|
||||
programs.autorandr = {
|
||||
enable = true;
|
||||
profiles."${config.local.platform}" = config.local.display.autorandrProfile;
|
||||
options.local.gui.autorandr.enable = mkEnableOption "Autorandr";
|
||||
config = mkIf cfg.enable {
|
||||
programs.autorandr = {
|
||||
enable = true;
|
||||
profiles."${config.local.platform}" = config.local.display.autorandrProfile;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,43 +1,49 @@
|
|||
{ config, pkgs, lib, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.gui;
|
||||
in
|
||||
{
|
||||
options.local.gui = {
|
||||
enable = mkEnableOption "GUI settings and programs";
|
||||
desktop = mkEnableOption "i3 desktop envirorment"
|
||||
};
|
||||
|
||||
imports = [
|
||||
./autorandr.nix
|
||||
./desktop
|
||||
./fonts.nix
|
||||
./gtk.nix
|
||||
./i3.nix
|
||||
./polybar.nix
|
||||
./startx.nix
|
||||
];
|
||||
|
||||
config = mkIf ( !config.home.isolation.active ) {
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
local.gui = {
|
||||
fonts.enable = mkDefault true;
|
||||
gtk.enable = mkDefault true;
|
||||
|
||||
services.picom = {
|
||||
enable = true;
|
||||
autorandr.enable = mkDefault cfg.desktop;
|
||||
i3.enable = mkDefault cfg.desktop;
|
||||
polybar.enable = mkDefault cfg.desktop;
|
||||
startx.enable = mkDefault cfg.desktop;
|
||||
};
|
||||
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.betterlockscreen = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications = {
|
||||
"application/pdf" = [ "org.kde.okular.desktop" ];
|
||||
"application/x-extension-htm" = [ "firefox.desktop" ];
|
||||
"application/x-extension-html" = [ "firefox.desktop" ];
|
||||
"application/x-extension-shtml" = [ "firefox.desktop" ];
|
||||
"application/x-extension-xht" = [ "firefox.desktop" ];
|
||||
"application/x-extension-xhtml" = [ "firefox.desktop" ];
|
||||
"application/xhtml+xml" = [ "firefox.desktop" ];
|
||||
"text/html" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/http" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/https" = [ "firefox.desktop" ];
|
||||
|
||||
services = mkIf cfg.desktop {
|
||||
picom = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
dunst = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
betterlockscreen = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
xdg.mimeApps.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
{ config, lib, pkgs, ...} :
|
||||
with lib;
|
||||
{
|
||||
imports = [
|
||||
./terminal.nix
|
||||
./steam
|
||||
./vscode.nix
|
||||
];
|
||||
# el sistema de shenvs detecta
|
||||
# que esto solo va para mi home,
|
||||
# no para las shenvs
|
||||
programs.steam.enable = !config.home.isolation.active;
|
||||
}
|
|
@ -1,28 +0,0 @@
|
|||
{config, lib, pkgs, ...} :
|
||||
with lib;
|
||||
{
|
||||
programs = mkIf ( !config.home.isolation.active ) {
|
||||
kitty = {
|
||||
enable = true;
|
||||
extraConfig = import ./kitty.conf.nix;
|
||||
};
|
||||
|
||||
tmux = {
|
||||
enable = true;
|
||||
aggressiveResize = true;
|
||||
clock24 = true;
|
||||
escapeTime = 10;
|
||||
terminal = "xterm-256color";
|
||||
keyMode = "emacs";
|
||||
|
||||
extraConfig = ''
|
||||
set -g mouse on
|
||||
set -ga update-environment " LIFT_PID"
|
||||
set -g set-titles on
|
||||
set -g renumber-windows on
|
||||
set -sa terminal-overrides ',xterm-termite:RGB'
|
||||
set -g status-right "#{?window_bigger,[#{window_offset_x}#,#{window_offset_y}] ,} %H:%M %d-%b-%y"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,67 +0,0 @@
|
|||
{config, lib, pkgs, ...} :
|
||||
with lib;
|
||||
{
|
||||
programs.vscode = mkIf ( !config.home.isolation.active ) {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
haskell = {
|
||||
enable = true;
|
||||
hie.enable = false;
|
||||
};
|
||||
mutableExtensionsDir = false;
|
||||
extensions = (with pkgs.vscode-extensions; [
|
||||
bbenoist.nix
|
||||
ms-toolsai.jupyter
|
||||
ms-vscode.cpptools
|
||||
]) ++ (with pkgs.local.vscode-extensions; [
|
||||
rust-lang.rust
|
||||
sirtori.indenticator
|
||||
toasty-technologies.octave
|
||||
Gimly81.matlab
|
||||
zhwu95.riscv
|
||||
tomoki1207.pdf
|
||||
vscode-icons-team.vscode-icons
|
||||
dan-c-underwood.arm
|
||||
mshr-h.VerilogHDL
|
||||
rashwell.tcl
|
||||
xshrim.txt-syntax
|
||||
ZixuanWang.linkerscript
|
||||
hediet.vscode-drawio
|
||||
aaron-bond.better-comments
|
||||
streetsidesoftware.code-spell-checker
|
||||
wayou.vscode-todo-highlight
|
||||
xaver.clang-format
|
||||
yzhang.markdown-all-in-one
|
||||
christian-kohler.path-intellisense
|
||||
sukumo28.wav-preview
|
||||
oderwat.indent-rainbow
|
||||
ms-python.python
|
||||
]);
|
||||
userSettings = {
|
||||
"files.autoSave" = "onFocusChange";
|
||||
"explorer.confirmDelete" = false;
|
||||
"explorer.confirmDragAndDrop" = false;
|
||||
"security.workspace.trust.enabled" = false;
|
||||
"workbench.startupEditor" = "none";
|
||||
"workbench.colorTheme" = "Default High Contrast";
|
||||
"editor.mouseWheelZoom" = true;
|
||||
"editor.cursorSmoothCaretAnimation" = true;
|
||||
"workbench.list.smoothScrolling" = true;
|
||||
"editor.smoothScrolling" = true;
|
||||
"editor.rulers" = [80 120];
|
||||
"workbench.iconTheme" = "vscode-icons";
|
||||
"workbench.editor.untitled.hint" = "hidden";
|
||||
"editor.autoClosingDelete" = "never";
|
||||
"editor.autoClosingOvertype" = "never";
|
||||
"editor.autoClosingBrackets" = "never";
|
||||
"editor.autoClosingQuotes" = "never";
|
||||
"indentRainbow.colors" = [
|
||||
"rgba(255,255,64,0.2)"
|
||||
"rgba(127,255,127,0.2)"
|
||||
"rgba(255,127,255,0.2)"
|
||||
"rgba(79,236,236,0.2)"
|
||||
];
|
||||
"hediet.vscode-drawio.theme" = "dark";
|
||||
};
|
||||
};
|
||||
}
|
15
home/gui/fonts.nix
Normal file
15
home/gui/fonts.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{ config, pkgs, lib, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.gui.fonts;
|
||||
in
|
||||
{
|
||||
options.local.gui.fonts.enable = mkEnableOption "Font management";
|
||||
config = mkIf cfg.enable {
|
||||
fonts.fontconfig.enable = true;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
jetbrains-mono
|
||||
];
|
||||
};
|
||||
}
|
14
home/gui/gtk.nix
Normal file
14
home/gui/gtk.nix
Normal file
|
@ -0,0 +1,14 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.gui.gtk;
|
||||
in
|
||||
{
|
||||
options.local.gui.gtk.enable = mkEnableOption "GTK related programs";
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
gruvbox-dark-icons-gtk
|
||||
libsForQt5.breeze-gtk
|
||||
];
|
||||
}
|
||||
}
|
177
home/gui/i3.nix
177
home/gui/i3.nix
|
@ -1,96 +1,101 @@
|
|||
{ config, pkgs, lib, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.gui.i3;
|
||||
in
|
||||
{
|
||||
|
||||
xsession.windowManager.i3 = mkIf ( !config.home.isolation.active ) {
|
||||
enable = true;
|
||||
package = pkgs.i3-gaps;
|
||||
|
||||
config = let
|
||||
mod = "Mod4";
|
||||
in {
|
||||
modifier = mod;
|
||||
# revisar luego si config.bars tiene un default danino
|
||||
options.local.gui.i3.enable = mkEnableOption "i3 window manager";
|
||||
config = mkIf cfg.enable {
|
||||
xsession.windowManager.i3 = {
|
||||
enable = true;
|
||||
package = pkgs.i3-gaps;
|
||||
|
||||
fonts = {
|
||||
names = [ "JetBrains Mono" ];
|
||||
style = "Regular";
|
||||
size = 8.0;
|
||||
};
|
||||
|
||||
gaps = {
|
||||
inner = 10;
|
||||
outer = -10;
|
||||
};
|
||||
|
||||
window = {
|
||||
hideEdgeBorders = "both";
|
||||
};
|
||||
|
||||
colors = {
|
||||
focused = {
|
||||
background = "#222222";
|
||||
border = "#4c7899";
|
||||
childBorder = "#222222";
|
||||
indicator = "#292d2e";
|
||||
text = "#888888";
|
||||
config = let
|
||||
mod = "Mod4";
|
||||
in {
|
||||
modifier = mod;
|
||||
# revisar luego si config.bars tiene un default danino
|
||||
|
||||
fonts = {
|
||||
names = [ "JetBrains Mono" ];
|
||||
style = "Regular";
|
||||
size = 8.0;
|
||||
};
|
||||
};
|
||||
|
||||
# mkOptionDefault hace que se ponga la config por default
|
||||
# y se sobreescriba las cosas que pongo acA
|
||||
# NO QUITARLO. ver man home-configuration.nix
|
||||
keybindings = mkOptionDefault {
|
||||
"${mod}+Return" = "exec ${pkgs.kitty}/bin/kitty ${pkgs.tmux}/bin/tmux";
|
||||
"${mod}+Tab" = "focus right";
|
||||
"${mod}+Shift+Tab" = "focus left";
|
||||
"${mod}+Shift+s" = "exec ${pkgs.maim}/bin/maim -s -u | ${pkgs.xclip}/bin/xclip -selection clipboard -t image/png -i";
|
||||
"${mod}+Shift+w" = "move workspace to output right";
|
||||
};
|
||||
|
||||
# menu = "${pkgs.dmenu}/bin/dmenu_run"
|
||||
|
||||
startup = [
|
||||
{
|
||||
command = "${pkgs.xss-lock}/bin/xss-lock --transfer-sleep-lock -- ${pkgs.i3lock}/bin/i3lock --nofork";
|
||||
notification = false;
|
||||
}
|
||||
{
|
||||
command = "${pkgs.networkmanagerapplet}/bin/nm-applet";
|
||||
notification = false;
|
||||
}
|
||||
{
|
||||
command = "${pkgs.feh}/bin/feh --bg-scale ${config.home.homeDirectory}/Pictures/wallpapers/carina_jwst.jpg";
|
||||
notification = false;
|
||||
always = true;
|
||||
}
|
||||
{
|
||||
command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace 1; exec ${pkgs.firefox}/bin/firefox'";
|
||||
}
|
||||
{
|
||||
command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace 2; exec ${pkgs.tdesktop}/bin/telegram-desktop'";
|
||||
}
|
||||
{
|
||||
command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace 2; exec ${pkgs.signal-desktop}/bin/signal-desktop'";
|
||||
}
|
||||
{
|
||||
command = "${pkgs.systemd}/bin/systemctl --user restart polybar.service";
|
||||
notification = false;
|
||||
always = true;
|
||||
}
|
||||
];
|
||||
|
||||
workspaceOutputAssign = [
|
||||
{
|
||||
output = config.local.display."0";
|
||||
workspace = "1";
|
||||
}
|
||||
] ++ optional (config.local.display."1" != null) {
|
||||
output = config.local.display."1";
|
||||
workspace = "10";
|
||||
gaps = {
|
||||
inner = 10;
|
||||
outer = -10;
|
||||
};
|
||||
|
||||
bars = [ ];
|
||||
|
||||
window = {
|
||||
hideEdgeBorders = "both";
|
||||
};
|
||||
|
||||
colors = {
|
||||
focused = {
|
||||
background = "#222222";
|
||||
border = "#4c7899";
|
||||
childBorder = "#222222";
|
||||
indicator = "#292d2e";
|
||||
text = "#888888";
|
||||
};
|
||||
};
|
||||
|
||||
# mkOptionDefault hace que se ponga la config por default
|
||||
# y se sobreescriba las cosas que pongo acA
|
||||
# NO QUITARLO. ver man home-configuration.nix
|
||||
keybindings = mkOptionDefault {
|
||||
"${mod}+Return" = "exec ${pkgs.kitty}/bin/kitty ${pkgs.tmux}/bin/tmux";
|
||||
"${mod}+Tab" = "focus right";
|
||||
"${mod}+Shift+Tab" = "focus left";
|
||||
"${mod}+Shift+s" = "exec ${pkgs.maim}/bin/maim -s -u | ${pkgs.xclip}/bin/xclip -selection clipboard -t image/png -i";
|
||||
"${mod}+Shift+w" = "move workspace to output right";
|
||||
};
|
||||
|
||||
# menu = "${pkgs.dmenu}/bin/dmenu_run"
|
||||
|
||||
startup = [
|
||||
{
|
||||
command = "${pkgs.xss-lock}/bin/xss-lock --transfer-sleep-lock -- ${pkgs.i3lock}/bin/i3lock --nofork";
|
||||
notification = false;
|
||||
}
|
||||
{
|
||||
command = "${pkgs.networkmanagerapplet}/bin/nm-applet";
|
||||
notification = false;
|
||||
}
|
||||
{
|
||||
command = "${pkgs.feh}/bin/feh --bg-scale ${config.home.homeDirectory}/Pictures/wallpapers/carina_jwst.jpg";
|
||||
notification = false;
|
||||
always = true;
|
||||
}
|
||||
{
|
||||
command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace 1; exec ${pkgs.firefox}/bin/firefox'";
|
||||
}
|
||||
{
|
||||
command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace 2; exec ${pkgs.tdesktop}/bin/telegram-desktop'";
|
||||
}
|
||||
{
|
||||
command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace 2; exec ${pkgs.signal-desktop}/bin/signal-desktop'";
|
||||
}
|
||||
{
|
||||
command = "${pkgs.systemd}/bin/systemctl --user restart polybar.service";
|
||||
notification = false;
|
||||
always = true;
|
||||
}
|
||||
];
|
||||
|
||||
workspaceOutputAssign = [
|
||||
{
|
||||
output = config.local.display."0";
|
||||
workspace = "1";
|
||||
}
|
||||
] ++ optional (config.local.display."1" != null) {
|
||||
output = config.local.display."1";
|
||||
workspace = "10";
|
||||
};
|
||||
|
||||
bars = [ ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,454 +1,460 @@
|
|||
{ config, pkgs, lib, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.gui.polybar;
|
||||
in
|
||||
{
|
||||
services.polybar = mkIf ( !config.home.isolation.active ) {
|
||||
enable = true;
|
||||
package = pkgs.polybarFull;
|
||||
script = ''
|
||||
# Terminate already running bar instances
|
||||
killall -q polybar
|
||||
|
||||
# Wait until the processes have been shut down
|
||||
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
|
||||
|
||||
# Launch Polybar, using default config location ~/.config/polybar/config
|
||||
polybar -r main & polybar -r secondary &
|
||||
'';
|
||||
|
||||
settings = {
|
||||
"colors" = {
|
||||
# background = "\${xrdb:color0:#222}";
|
||||
background = "#AA000000";
|
||||
background-alt = "#00000000";
|
||||
# foreground = "\${xrdb:color7:#222}";
|
||||
foreground = "#ffffff";
|
||||
foreground-alt = "#ffffff";
|
||||
primary = "#ffffff";
|
||||
secondary = "#e60053";
|
||||
alert = "#bd2c40";
|
||||
};
|
||||
|
||||
"bar/main" = {
|
||||
monitor = "${config.local.display."0"}";
|
||||
width = "100%";
|
||||
height = 30;
|
||||
offset-x = "0%";
|
||||
offset-y = "0%";
|
||||
radius = 0.0;
|
||||
fixed-center = false;
|
||||
|
||||
background = "\${colors.background}";
|
||||
foreground = "\${colors.foreground}";
|
||||
|
||||
line-size = 1;
|
||||
line-color = "#f0000000";
|
||||
|
||||
border-size = 0;
|
||||
border-color = "#00000000";
|
||||
|
||||
padding-left = 0;
|
||||
padding-right = 0;
|
||||
|
||||
module-margin-left = 1;
|
||||
module-margin-right = 1;
|
||||
|
||||
# font-0 = "fixed:pixelsize=10;1";
|
||||
font-0 = "JetBrains Mono Light:size=10;0";
|
||||
font-1 = "unifont:fontformat=truetype:size=8:antialias=false;0";
|
||||
font-2 = "siji:pixelsize=10;1";
|
||||
# font-2 = "FontAwesome5Free:style=Regular:size=10;4";
|
||||
|
||||
modules-left = "i3";
|
||||
modules-center = "xwindow";
|
||||
modules-right = "xkeyboard pulseaudio filesystem memory cpu temperature gputemperature nvmetemperature wlan eth date semanatec";
|
||||
separator = "|";
|
||||
|
||||
tray-position = "right";
|
||||
tray-padding = 2;
|
||||
|
||||
# To allow other windows to be placed above the bar, or to avoid having the bar visible when in fullscreen mode,
|
||||
# you need to use the following two parameters. Note that it will tell the window manager to back off so no
|
||||
# area will be reserved, etc.
|
||||
#
|
||||
# wm-restack = "i3";
|
||||
# override-redirect = true;
|
||||
|
||||
cursor-click = "pointer";
|
||||
cursor-scroll = "ns-resize";
|
||||
};
|
||||
|
||||
"bar/secondary" = optionalAttrs (config.local.display."1" != null) {
|
||||
monitor = "${config.local.display."1"}";
|
||||
"inherit" = "bar/main";
|
||||
options.local.gui.polybar.enable = mkEnableOption "Polybar";
|
||||
config = mkIf cfg.enable {
|
||||
services.polybar = mkIf ( !config.home.isolation.active ) {
|
||||
enable = true;
|
||||
package = pkgs.polybarFull;
|
||||
script = ''
|
||||
# Terminate already running bar instances
|
||||
killall -q polybar
|
||||
|
||||
modules-left = "i3";
|
||||
modules-center = "xwindow";
|
||||
modules-right = "xkeyboard pulseaudio date";
|
||||
tray-position = "none";
|
||||
};
|
||||
# Wait until the processes have been shut down
|
||||
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
|
||||
|
||||
# Launch Polybar, using default config location ~/.config/polybar/config
|
||||
polybar -r main & polybar -r secondary &
|
||||
'';
|
||||
|
||||
"module/xwindow" = {
|
||||
type = "internal/xwindow";
|
||||
label = "%title:0:30:...%";
|
||||
};
|
||||
settings = {
|
||||
"colors" = {
|
||||
# background = "\${xrdb:color0:#222}";
|
||||
background = "#AA000000";
|
||||
background-alt = "#00000000";
|
||||
# foreground = "\${xrdb:color7:#222}";
|
||||
foreground = "#ffffff";
|
||||
foreground-alt = "#ffffff";
|
||||
primary = "#ffffff";
|
||||
secondary = "#e60053";
|
||||
alert = "#bd2c40";
|
||||
};
|
||||
|
||||
"module/xkeyboard" = {
|
||||
type = "internal/xkeyboard";
|
||||
blacklist-0 = "num lock";
|
||||
"bar/main" = {
|
||||
monitor = "${config.local.display."0"}";
|
||||
width = "100%";
|
||||
height = 30;
|
||||
offset-x = "0%";
|
||||
offset-y = "0%";
|
||||
radius = 0.0;
|
||||
fixed-center = false;
|
||||
|
||||
format-prefix = "";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
background = "\${colors.background}";
|
||||
foreground = "\${colors.foreground}";
|
||||
|
||||
label-layout = "%layout%";
|
||||
line-size = 1;
|
||||
line-color = "#f0000000";
|
||||
|
||||
label-indicator-padding = 2;
|
||||
label-indicator-margin = 1;
|
||||
label-indicator-background = "\${colors.secondary}";
|
||||
};
|
||||
border-size = 0;
|
||||
border-color = "#00000000";
|
||||
|
||||
"module/filesystem" = {
|
||||
type = "internal/fs";
|
||||
interval = 10;
|
||||
padding-left = 0;
|
||||
padding-right = 0;
|
||||
|
||||
mount-0 = "/";
|
||||
module-margin-left = 1;
|
||||
module-margin-right = 1;
|
||||
|
||||
label-mounted = "%{F#0a81f5}%mountpoint%%{F-}: %used%/%total%";
|
||||
label-unmounted = "";
|
||||
};
|
||||
# font-0 = "fixed:pixelsize=10;1";
|
||||
font-0 = "JetBrains Mono Light:size=10;0";
|
||||
font-1 = "unifont:fontformat=truetype:size=8:antialias=false;0";
|
||||
font-2 = "siji:pixelsize=10;1";
|
||||
# font-2 = "FontAwesome5Free:style=Regular:size=10;4";
|
||||
|
||||
"module/i3" = {
|
||||
type = "internal/i3";
|
||||
format = "<label-state> <label-mode>";
|
||||
index-sort = true;
|
||||
wrapping-scroll = false;
|
||||
modules-left = "i3";
|
||||
modules-center = "xwindow";
|
||||
modules-right = "xkeyboard pulseaudio filesystem memory cpu temperature gputemperature nvmetemperature wlan eth date semanatec";
|
||||
separator = "|";
|
||||
|
||||
# Only show workspaces on the same output as the bar
|
||||
# pin-workspaces = true
|
||||
tray-position = "right";
|
||||
tray-padding = 2;
|
||||
|
||||
label-mode-padding = 1;
|
||||
label-mode-foreground = "#000";
|
||||
label-mode-background = "\${colors.primary}";
|
||||
# To allow other windows to be placed above the bar, or to avoid having the bar visible when in fullscreen mode,
|
||||
# you need to use the following two parameters. Note that it will tell the window manager to back off so no
|
||||
# area will be reserved, etc.
|
||||
#
|
||||
# wm-restack = "i3";
|
||||
# override-redirect = true;
|
||||
|
||||
# focused = Active workspace on focused monitor
|
||||
label-focused = "%index%";
|
||||
label-focused-background = "\${colors.background}";
|
||||
label-focused-underline = "\${colors.primary}";
|
||||
label-focused-padding = 1;
|
||||
cursor-click = "pointer";
|
||||
cursor-scroll = "ns-resize";
|
||||
};
|
||||
|
||||
# unfocused = Inactive workspace on any monitor
|
||||
label-unfocused = "%index%";
|
||||
label-unfocused-padding = 1;
|
||||
"bar/secondary" = optionalAttrs (config.local.display."1" != null) {
|
||||
monitor = "${config.local.display."1"}";
|
||||
"inherit" = "bar/main";
|
||||
|
||||
modules-left = "i3";
|
||||
modules-center = "xwindow";
|
||||
modules-right = "xkeyboard pulseaudio date";
|
||||
tray-position = "none";
|
||||
};
|
||||
|
||||
# visible = Active workspace on unfocused monitor
|
||||
label-visible = "%index%";
|
||||
label-visible-background = "\${self.label-focused-background}";
|
||||
label-visible-underline = "\${self.label-focused-underline}";
|
||||
label-visible-padding = "\${self.label-focused-padding}";
|
||||
"module/xwindow" = {
|
||||
type = "internal/xwindow";
|
||||
label = "%title:0:30:...%";
|
||||
};
|
||||
|
||||
# urgent = Workspace with urgency hint set
|
||||
label-urgent = "%index%";
|
||||
label-urgent-background = "\${colors.alert}";
|
||||
label-urgent-padding = 1;
|
||||
};
|
||||
"module/xkeyboard" = {
|
||||
type = "internal/xkeyboard";
|
||||
blacklist-0 = "num lock";
|
||||
|
||||
"module/xbacklight" = {
|
||||
type = "internal/xbacklight";
|
||||
format-prefix = "";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
|
||||
format = "<label> <bar>";
|
||||
label = "BL";
|
||||
label-layout = "%layout%";
|
||||
|
||||
bar-width = 10;
|
||||
bar-indicator = "|";
|
||||
bar-indicator-foreground = "#fff";
|
||||
bar-indicator-font = 2;
|
||||
bar-fill = "─";
|
||||
bar-fill-font = 2;
|
||||
bar-fill-foreground = "#9f78e1";
|
||||
bar-empty = "─";
|
||||
bar-empty-font = 2;
|
||||
bar-empty-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
label-indicator-padding = 2;
|
||||
label-indicator-margin = 1;
|
||||
label-indicator-background = "\${colors.secondary}";
|
||||
};
|
||||
|
||||
"module/backlight-acpi" = {
|
||||
"inherit" = "module/xbacklight";
|
||||
type = "internal/backlight";
|
||||
card = "intel_backlight";
|
||||
};
|
||||
|
||||
"module/cpu" = {
|
||||
type = "internal/cpu";
|
||||
interval = 2;
|
||||
format-prefix = "cpu ";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
label = "%percentage:2%%";
|
||||
};
|
||||
|
||||
"module/memory" = {
|
||||
type = "internal/memory";
|
||||
interval = 2;
|
||||
format-prefix = "mem ";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
label = "%percentage_used%%";
|
||||
};
|
||||
|
||||
"module/wlan" = {
|
||||
type = "internal/network";
|
||||
interface = "wlp7s0";
|
||||
interval = 3.0;
|
||||
"module/filesystem" = {
|
||||
type = "internal/fs";
|
||||
interval = 10;
|
||||
|
||||
format-connected = "<ramp-signal> <label-connected>";
|
||||
label-connected = "%essid%";
|
||||
mount-0 = "/";
|
||||
|
||||
format-disconnected = "";
|
||||
# format-disconnected = "<label-disconnected>";
|
||||
# format-disconnected-underline = "\${self.format-connected-underline}";
|
||||
# label-disconnected = "%ifname% disconnected";
|
||||
# label-disconnected-foreground = "\${colors.foreground-alt}";
|
||||
label-mounted = "%{F#0a81f5}%mountpoint%%{F-}: %used%/%total%";
|
||||
label-unmounted = "";
|
||||
};
|
||||
|
||||
ramp-signal-0 = "";
|
||||
ramp-signal-1 = "";
|
||||
ramp-signal-2 = "";
|
||||
ramp-signal-3 = "";
|
||||
ramp-signal-4 = "";
|
||||
ramp-signal-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/eth" = {
|
||||
type = "internal/network";
|
||||
interface = "enp8s0";
|
||||
interval = 3.0;
|
||||
"module/i3" = {
|
||||
type = "internal/i3";
|
||||
format = "<label-state> <label-mode>";
|
||||
index-sort = true;
|
||||
wrapping-scroll = false;
|
||||
|
||||
format-connected-prefix = "";
|
||||
format-connected-prefix-foreground = "\${colors.foreground-alt}";
|
||||
label-connected = "%local_ip%";
|
||||
# Only show workspaces on the same output as the bar
|
||||
# pin-workspaces = true
|
||||
|
||||
format-disconnected = "";
|
||||
# format-disconnected = "<label-disconnected>";
|
||||
# format-disconnected-underline = "\${self.format-connected-underline}";
|
||||
# label-disconnected = "%ifname% disconnected";
|
||||
# label-disconnected-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/date" = {
|
||||
type = "internal/date";
|
||||
interval = 1;
|
||||
label-mode-padding = 1;
|
||||
label-mode-foreground = "#000";
|
||||
label-mode-background = "\${colors.primary}";
|
||||
|
||||
date = " %d/%m/%Y" ;
|
||||
date-alt = " %c";
|
||||
# focused = Active workspace on focused monitor
|
||||
label-focused = "%index%";
|
||||
label-focused-background = "\${colors.background}";
|
||||
label-focused-underline = "\${colors.primary}";
|
||||
label-focused-padding = 1;
|
||||
|
||||
time = "%H:%M";
|
||||
time-alt = " [%s]";
|
||||
# unfocused = Inactive workspace on any monitor
|
||||
label-unfocused = "%index%";
|
||||
label-unfocused-padding = 1;
|
||||
|
||||
format-prefix = "";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
# visible = Active workspace on unfocused monitor
|
||||
label-visible = "%index%";
|
||||
label-visible-background = "\${self.label-focused-background}";
|
||||
label-visible-underline = "\${self.label-focused-underline}";
|
||||
label-visible-padding = "\${self.label-focused-padding}";
|
||||
|
||||
label = "%date% %time%";
|
||||
};
|
||||
|
||||
# "module/semanatec" = {
|
||||
# type = "custom/script"
|
||||
# exec = "/home/fabian/bin/semanatec/target/release/semanatec"
|
||||
# interval = 3600
|
||||
# format-prefix = ""
|
||||
# };
|
||||
|
||||
"module/pulseaudio" = {
|
||||
type = "internal/pulseaudio";
|
||||
# urgent = Workspace with urgency hint set
|
||||
label-urgent = "%index%";
|
||||
label-urgent-background = "\${colors.alert}";
|
||||
label-urgent-padding = 1;
|
||||
};
|
||||
|
||||
format-volume = "<label-volume>";
|
||||
label-volume = "vol %percentage%%";
|
||||
label-volume-foreground = "\${root.foreground}";
|
||||
"module/xbacklight" = {
|
||||
type = "internal/xbacklight";
|
||||
|
||||
label-muted = "vol 0%";
|
||||
label-muted-foreground = "\${root.foreground}";
|
||||
format = "<label> <bar>";
|
||||
label = "BL";
|
||||
|
||||
bar-volume-width = 10;
|
||||
bar-volume-foreground-0 = "#55aa55";
|
||||
bar-volume-foreground-1 = "#55aa55";
|
||||
bar-volume-foreground-2 = "#55aa55";
|
||||
bar-volume-foreground-3 = "#55aa55";
|
||||
bar-volume-foreground-4 = "#55aa55";
|
||||
bar-volume-foreground-5 = "#f5a70a";
|
||||
bar-volume-foreground-6 = "#ff5555";
|
||||
bar-volume-gradient = false;
|
||||
bar-volume-indicator = "|";
|
||||
bar-volume-indicator-font = 2;
|
||||
bar-volume-fill = "─";
|
||||
bar-volume-fill-font = 2;
|
||||
bar-volume-empty = "─";
|
||||
bar-volume-empty-font = 2;
|
||||
bar-volume-empty-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/alsa" = {
|
||||
type = "internal/alsa";
|
||||
bar-width = 10;
|
||||
bar-indicator = "|";
|
||||
bar-indicator-foreground = "#fff";
|
||||
bar-indicator-font = 2;
|
||||
bar-fill = "─";
|
||||
bar-fill-font = 2;
|
||||
bar-fill-foreground = "#9f78e1";
|
||||
bar-empty = "─";
|
||||
bar-empty-font = 2;
|
||||
bar-empty-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
format-volume = "<label-volume> <bar-volume>";
|
||||
label-volume = "VOL";
|
||||
label-volume-foreground = "\${root.foreground}";
|
||||
"module/backlight-acpi" = {
|
||||
"inherit" = "module/xbacklight";
|
||||
type = "internal/backlight";
|
||||
card = "intel_backlight";
|
||||
};
|
||||
|
||||
"module/cpu" = {
|
||||
type = "internal/cpu";
|
||||
interval = 2;
|
||||
format-prefix = "cpu ";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
label = "%percentage:2%%";
|
||||
};
|
||||
|
||||
"module/memory" = {
|
||||
type = "internal/memory";
|
||||
interval = 2;
|
||||
format-prefix = "mem ";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
label = "%percentage_used%%";
|
||||
};
|
||||
|
||||
"module/wlan" = {
|
||||
type = "internal/network";
|
||||
interface = "wlp7s0";
|
||||
interval = 3.0;
|
||||
|
||||
format-muted-prefix = "vol ";
|
||||
format-muted-foreground = "\${colors.foreground-alt}";
|
||||
label-muted = "sound muted";
|
||||
format-connected = "<ramp-signal> <label-connected>";
|
||||
label-connected = "%essid%";
|
||||
|
||||
bar-volume-width = 10;
|
||||
bar-volume-foreground-0 = "#55aa55";
|
||||
bar-volume-foreground-1 = "#55aa55";
|
||||
bar-volume-foreground-2 = "#55aa55";
|
||||
bar-volume-foreground-3 = "#55aa55";
|
||||
bar-volume-foreground-4 = "#55aa55";
|
||||
bar-volume-foreground-5 = "#f5a70a";
|
||||
bar-volume-foreground-6 = "#ff5555";
|
||||
bar-volume-gradient = false;
|
||||
bar-volume-indicator = "|";
|
||||
bar-volume-indicator-font = 2;
|
||||
bar-volume-fill = "─";
|
||||
bar-volume-fill-font = 2;
|
||||
bar-volume-empty = "─";
|
||||
bar-volume-empty-font = 2;
|
||||
bar-volume-empty-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/battery" = {
|
||||
type = "internal/battery";
|
||||
battery = "BAT0";
|
||||
adapter = "ADP1";
|
||||
full-at = 98;
|
||||
format-disconnected = "";
|
||||
# format-disconnected = "<label-disconnected>";
|
||||
# format-disconnected-underline = "\${self.format-connected-underline}";
|
||||
# label-disconnected = "%ifname% disconnected";
|
||||
# label-disconnected-foreground = "\${colors.foreground-alt}";
|
||||
|
||||
format-charging = "<animation-charging> <label-charging>";
|
||||
format-charging-underline = "#ffb52a";
|
||||
ramp-signal-0 = "";
|
||||
ramp-signal-1 = "";
|
||||
ramp-signal-2 = "";
|
||||
ramp-signal-3 = "";
|
||||
ramp-signal-4 = "";
|
||||
ramp-signal-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/eth" = {
|
||||
type = "internal/network";
|
||||
interface = "enp8s0";
|
||||
interval = 3.0;
|
||||
|
||||
format-discharging = "<animation-discharging> <label-discharging>";
|
||||
format-discharging-underline = "\${self.format-charging-underline}";
|
||||
format-connected-prefix = "";
|
||||
format-connected-prefix-foreground = "\${colors.foreground-alt}";
|
||||
label-connected = "%local_ip%";
|
||||
|
||||
format-full-prefix = " ";
|
||||
format-full-prefix-foreground = "\${colors.foreground-alt}";
|
||||
format-full-underline = "\${self.format-charging-underline}";
|
||||
format-disconnected = "";
|
||||
# format-disconnected = "<label-disconnected>";
|
||||
# format-disconnected-underline = "\${self.format-connected-underline}";
|
||||
# label-disconnected = "%ifname% disconnected";
|
||||
# label-disconnected-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/date" = {
|
||||
type = "internal/date";
|
||||
interval = 1;
|
||||
|
||||
ramp-capacity-0 = "";
|
||||
ramp-capacity-1 = "";
|
||||
ramp-capacity-2 = "";
|
||||
ramp-capacity-foreground = "\${colors.foreground-alt}";
|
||||
date = " %d/%m/%Y" ;
|
||||
date-alt = " %c";
|
||||
|
||||
animation-charging-0 = "";
|
||||
animation-charging-1 = "";
|
||||
animation-charging-2 = "";
|
||||
animation-charging-foreground = "\${colors.foreground-alt}";
|
||||
animation-charging-framerate = 750;
|
||||
time = "%H:%M";
|
||||
time-alt = " [%s]";
|
||||
|
||||
animation-discharging-0 = "";
|
||||
animation-discharging-1 = "";
|
||||
animation-discharging-2 = "";
|
||||
animation-discharging-foreground = "\${colors.foreground-alt}";
|
||||
animation-discharging-framerate = 750;
|
||||
};
|
||||
|
||||
"module/temperature" = {
|
||||
type = "internal/temperature";
|
||||
warn-temperature = 60;
|
||||
hwmon-path = "/sys/devices/pci0000:00/0000:00:18.3/hwmon/hwmon1/temp2_input";
|
||||
format-prefix = "";
|
||||
format-prefix-foreground = "\${colors.foreground-alt}";
|
||||
|
||||
format = "<ramp> <label>";
|
||||
format-warn = "<ramp> <label-warn>";
|
||||
label = "%date% %time%";
|
||||
};
|
||||
|
||||
# "module/semanatec" = {
|
||||
# type = "custom/script"
|
||||
# exec = "/home/fabian/bin/semanatec/target/release/semanatec"
|
||||
# interval = 3600
|
||||
# format-prefix = ""
|
||||
# };
|
||||
|
||||
"module/pulseaudio" = {
|
||||
type = "internal/pulseaudio";
|
||||
|
||||
label = "cpu %temperature-c%";
|
||||
label-warn = "cpu %temperature-c%";
|
||||
label-warn-foreground = "\${colors.secondary}";
|
||||
format-volume = "<label-volume>";
|
||||
label-volume = "vol %percentage%%";
|
||||
label-volume-foreground = "\${root.foreground}";
|
||||
|
||||
ramp-0 = "";
|
||||
ramp-1 = "";
|
||||
ramp-2 = "";
|
||||
ramp-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/gputemperature" = {
|
||||
type = "internal/temperature";
|
||||
warn-temperature = 60;
|
||||
hwmon-path = "/sys/devices/pci0000:00/0000:00:03.1/0000:09:00.0/hwmon/hwmon3/temp1_input";
|
||||
label-muted = "vol 0%";
|
||||
label-muted-foreground = "\${root.foreground}";
|
||||
|
||||
format = "<ramp> <label>";
|
||||
format-warn = "<ramp> <label-warn>";
|
||||
bar-volume-width = 10;
|
||||
bar-volume-foreground-0 = "#55aa55";
|
||||
bar-volume-foreground-1 = "#55aa55";
|
||||
bar-volume-foreground-2 = "#55aa55";
|
||||
bar-volume-foreground-3 = "#55aa55";
|
||||
bar-volume-foreground-4 = "#55aa55";
|
||||
bar-volume-foreground-5 = "#f5a70a";
|
||||
bar-volume-foreground-6 = "#ff5555";
|
||||
bar-volume-gradient = false;
|
||||
bar-volume-indicator = "|";
|
||||
bar-volume-indicator-font = 2;
|
||||
bar-volume-fill = "─";
|
||||
bar-volume-fill-font = 2;
|
||||
bar-volume-empty = "─";
|
||||
bar-volume-empty-font = 2;
|
||||
bar-volume-empty-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/alsa" = {
|
||||
type = "internal/alsa";
|
||||
|
||||
label = "gpu %temperature-c%";
|
||||
label-warn = "gpu %temperature-c%";
|
||||
label-warn-foreground = "\${colors.secondary}";
|
||||
format-volume = "<label-volume> <bar-volume>";
|
||||
label-volume = "VOL";
|
||||
label-volume-foreground = "\${root.foreground}";
|
||||
|
||||
ramp-0 = "";
|
||||
ramp-1 = "";
|
||||
ramp-2 = "";
|
||||
ramp-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/nvmetemperature" = {
|
||||
type = "internal/temperature";
|
||||
warn-temperature = 60;
|
||||
hwmon-path = "/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/hwmon/hwmon0/temp1_input";
|
||||
format-muted-prefix = "vol ";
|
||||
format-muted-foreground = "\${colors.foreground-alt}";
|
||||
label-muted = "sound muted";
|
||||
|
||||
format = "<ramp> <label>";
|
||||
format-warn = "<ramp> <label-warn>";
|
||||
bar-volume-width = 10;
|
||||
bar-volume-foreground-0 = "#55aa55";
|
||||
bar-volume-foreground-1 = "#55aa55";
|
||||
bar-volume-foreground-2 = "#55aa55";
|
||||
bar-volume-foreground-3 = "#55aa55";
|
||||
bar-volume-foreground-4 = "#55aa55";
|
||||
bar-volume-foreground-5 = "#f5a70a";
|
||||
bar-volume-foreground-6 = "#ff5555";
|
||||
bar-volume-gradient = false;
|
||||
bar-volume-indicator = "|";
|
||||
bar-volume-indicator-font = 2;
|
||||
bar-volume-fill = "─";
|
||||
bar-volume-fill-font = 2;
|
||||
bar-volume-empty = "─";
|
||||
bar-volume-empty-font = 2;
|
||||
bar-volume-empty-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/battery" = {
|
||||
type = "internal/battery";
|
||||
battery = "BAT0";
|
||||
adapter = "ADP1";
|
||||
full-at = 98;
|
||||
|
||||
label = "M.2 %temperature-c%";
|
||||
label-warn = "M.2 %temperature-c%";
|
||||
label-warn-foreground = "\${colors.secondary}";
|
||||
format-charging = "<animation-charging> <label-charging>";
|
||||
format-charging-underline = "#ffb52a";
|
||||
|
||||
ramp-0 = "";
|
||||
ramp-1 = "";
|
||||
ramp-2 = "";
|
||||
ramp-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/powermenu" = {
|
||||
type = "custom/menu";
|
||||
format-discharging = "<animation-discharging> <label-discharging>";
|
||||
format-discharging-underline = "\${self.format-charging-underline}";
|
||||
|
||||
expand-right = true;
|
||||
format-full-prefix = " ";
|
||||
format-full-prefix-foreground = "\${colors.foreground-alt}";
|
||||
format-full-underline = "\${self.format-charging-underline}";
|
||||
|
||||
format-spacing = 1;
|
||||
ramp-capacity-0 = "";
|
||||
ramp-capacity-1 = "";
|
||||
ramp-capacity-2 = "";
|
||||
ramp-capacity-foreground = "\${colors.foreground-alt}";
|
||||
|
||||
label-open = "";
|
||||
label-open-foreground = "\${colors.secondary}";
|
||||
label-close = " cancel";
|
||||
label-close-foreground = "\${colors.secondary}";
|
||||
label-separator = "|";
|
||||
label-separator-foreground = "\${colors.foreground-alt}";
|
||||
animation-charging-0 = "";
|
||||
animation-charging-1 = "";
|
||||
animation-charging-2 = "";
|
||||
animation-charging-foreground = "\${colors.foreground-alt}";
|
||||
animation-charging-framerate = 750;
|
||||
|
||||
menu-0-0 = "reboot";
|
||||
menu-0-0-exec = "menu-open-1";
|
||||
menu-0-1 = "power off";
|
||||
menu-0-1-exec = "menu-open-2";
|
||||
animation-discharging-0 = "";
|
||||
animation-discharging-1 = "";
|
||||
animation-discharging-2 = "";
|
||||
animation-discharging-foreground = "\${colors.foreground-alt}";
|
||||
animation-discharging-framerate = 750;
|
||||
};
|
||||
|
||||
"module/temperature" = {
|
||||
type = "internal/temperature";
|
||||
warn-temperature = 60;
|
||||
hwmon-path = "/sys/devices/pci0000:00/0000:00:18.3/hwmon/hwmon1/temp2_input";
|
||||
|
||||
menu-1-0 = "cancel";
|
||||
menu-1-0-exec = "menu-open-0";
|
||||
menu-1-1 = "reboot";
|
||||
menu-1-1-exec = "sudo reboot";
|
||||
format = "<ramp> <label>";
|
||||
format-warn = "<ramp> <label-warn>";
|
||||
|
||||
menu-2-0 = "power off";
|
||||
menu-2-0-exec = "sudo poweroff";
|
||||
menu-2-1 = "cancel";
|
||||
menu-2-1-exec = "menu-open-0";
|
||||
};
|
||||
label = "cpu %temperature-c%";
|
||||
label-warn = "cpu %temperature-c%";
|
||||
label-warn-foreground = "\${colors.secondary}";
|
||||
|
||||
"module/sink_changer" = {
|
||||
type = "custom/script";
|
||||
exec = "/home/fabian/bin/polybar_scripts/info.sh";
|
||||
label = "%output%";
|
||||
click-left = "/home/fabian/bin/polybar_scripts/sink_changer.sh";
|
||||
# format-prefix = " ";
|
||||
interval = "0";
|
||||
# format-prefix-foreground = "${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"settings" = {
|
||||
screenchange-reload = true;
|
||||
# compositing-background = "xor";
|
||||
# compositing-background = "screen";
|
||||
# compositing-foreground = "source";
|
||||
# compositing-border = "over";
|
||||
# pseudo-transparency = false;
|
||||
};
|
||||
|
||||
"global/wm" = {
|
||||
margin-top = 5;
|
||||
margin-bottom = 5;
|
||||
ramp-0 = "";
|
||||
ramp-1 = "";
|
||||
ramp-2 = "";
|
||||
ramp-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/gputemperature" = {
|
||||
type = "internal/temperature";
|
||||
warn-temperature = 60;
|
||||
hwmon-path = "/sys/devices/pci0000:00/0000:00:03.1/0000:09:00.0/hwmon/hwmon3/temp1_input";
|
||||
|
||||
format = "<ramp> <label>";
|
||||
format-warn = "<ramp> <label-warn>";
|
||||
|
||||
label = "gpu %temperature-c%";
|
||||
label-warn = "gpu %temperature-c%";
|
||||
label-warn-foreground = "\${colors.secondary}";
|
||||
|
||||
ramp-0 = "";
|
||||
ramp-1 = "";
|
||||
ramp-2 = "";
|
||||
ramp-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/nvmetemperature" = {
|
||||
type = "internal/temperature";
|
||||
warn-temperature = 60;
|
||||
hwmon-path = "/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/hwmon/hwmon0/temp1_input";
|
||||
|
||||
format = "<ramp> <label>";
|
||||
format-warn = "<ramp> <label-warn>";
|
||||
|
||||
label = "M.2 %temperature-c%";
|
||||
label-warn = "M.2 %temperature-c%";
|
||||
label-warn-foreground = "\${colors.secondary}";
|
||||
|
||||
ramp-0 = "";
|
||||
ramp-1 = "";
|
||||
ramp-2 = "";
|
||||
ramp-foreground = "\${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"module/powermenu" = {
|
||||
type = "custom/menu";
|
||||
|
||||
expand-right = true;
|
||||
|
||||
format-spacing = 1;
|
||||
|
||||
label-open = "";
|
||||
label-open-foreground = "\${colors.secondary}";
|
||||
label-close = " cancel";
|
||||
label-close-foreground = "\${colors.secondary}";
|
||||
label-separator = "|";
|
||||
label-separator-foreground = "\${colors.foreground-alt}";
|
||||
|
||||
menu-0-0 = "reboot";
|
||||
menu-0-0-exec = "menu-open-1";
|
||||
menu-0-1 = "power off";
|
||||
menu-0-1-exec = "menu-open-2";
|
||||
|
||||
menu-1-0 = "cancel";
|
||||
menu-1-0-exec = "menu-open-0";
|
||||
menu-1-1 = "reboot";
|
||||
menu-1-1-exec = "sudo reboot";
|
||||
|
||||
menu-2-0 = "power off";
|
||||
menu-2-0-exec = "sudo poweroff";
|
||||
menu-2-1 = "cancel";
|
||||
menu-2-1-exec = "menu-open-0";
|
||||
};
|
||||
|
||||
"module/sink_changer" = {
|
||||
type = "custom/script";
|
||||
exec = "/home/fabian/bin/polybar_scripts/info.sh";
|
||||
label = "%output%";
|
||||
click-left = "/home/fabian/bin/polybar_scripts/sink_changer.sh";
|
||||
# format-prefix = " ";
|
||||
interval = "0";
|
||||
# format-prefix-foreground = "${colors.foreground-alt}";
|
||||
};
|
||||
|
||||
"settings" = {
|
||||
screenchange-reload = true;
|
||||
# compositing-background = "xor";
|
||||
# compositing-background = "screen";
|
||||
# compositing-foreground = "source";
|
||||
# compositing-border = "over";
|
||||
# pseudo-transparency = false;
|
||||
};
|
||||
|
||||
"global/wm" = {
|
||||
margin-top = 5;
|
||||
margin-bottom = 5;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,9 +1,13 @@
|
|||
{ config, pkgs, lib, ... } :
|
||||
with lib;
|
||||
let
|
||||
cfg = config.local.gui.startx;
|
||||
in
|
||||
{
|
||||
config = mkIf ( !config.home.isolation.active ) {
|
||||
options.local.gui.startx.enable = mkEnableOption "startx";
|
||||
config = mkIf cfg.enable {
|
||||
xsession.enable = true;
|
||||
|
||||
|
||||
home.file.".xinitrc".source = let
|
||||
content = if config.local.nixos then ''
|
||||
exec ~/.xsession
|
||||
|
@ -13,7 +17,4 @@ with lib;
|
|||
in
|
||||
pkgs.writeShellScript "xinitrc" content;
|
||||
};
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,61 +0,0 @@
|
|||
{ config, lib, pkgs, ... } :
|
||||
with lib;
|
||||
{
|
||||
home.packages = with pkgs;
|
||||
[
|
||||
file
|
||||
gcc
|
||||
helix
|
||||
killall
|
||||
man-pages
|
||||
man-pages-posix
|
||||
tree
|
||||
units
|
||||
unzip
|
||||
zip
|
||||
] ++ optionals ( !config.home.isolation.active ) [
|
||||
arandr
|
||||
arduino
|
||||
betterdiscordctl
|
||||
blas
|
||||
calc
|
||||
cargo-edit
|
||||
chromium
|
||||
deluge
|
||||
discord
|
||||
firefox
|
||||
gruvbox-dark-icons-gtk
|
||||
htop
|
||||
jetbrains.pycharm-professional
|
||||
jellyfin-media-player
|
||||
jq
|
||||
libreoffice-fresh
|
||||
libsForQt5.breeze-gtk
|
||||
maim
|
||||
mpv
|
||||
obs-studio
|
||||
okular
|
||||
pandoc
|
||||
pavucontrol
|
||||
pdfarranger
|
||||
# polymc marked as insecure, not installing untill this is fixed
|
||||
protonup
|
||||
rar
|
||||
runelite
|
||||
rust-analyzer
|
||||
rustup
|
||||
signal-desktop
|
||||
spotify
|
||||
tdesktop
|
||||
teams
|
||||
thunderbird
|
||||
tor
|
||||
tor-browser-bundle-bin
|
||||
usbutils
|
||||
virt-manager
|
||||
vlc
|
||||
xclip
|
||||
xournalpp
|
||||
zoom-us
|
||||
];
|
||||
}
|
|
@ -2,6 +2,11 @@
|
|||
config.local = {
|
||||
nixos = true;
|
||||
|
||||
apps = {
|
||||
steam.enable = true;
|
||||
virtmanager.enable = true;
|
||||
};
|
||||
|
||||
display = {
|
||||
"0" = "DisplayPort-0";
|
||||
"1" = "DisplayPort-1";
|
||||
|
|
11
home/shenvs/tor.nix
Normal file
11
home/shenvs/tor.nix
Normal file
|
@ -0,0 +1,11 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
static = true;
|
||||
namespaced = true;
|
||||
|
||||
packages = with pkgs; [
|
||||
tor
|
||||
tor-browser-bundle-bin
|
||||
];
|
||||
}
|
||||
|
|
@ -74,7 +74,7 @@
|
|||
alias ls='ls --color -F'
|
||||
alias l='ls --color -FhAltr'
|
||||
alias x='killall --ignore-case --user=$(whoami) --interactive'
|
||||
alias sc='${maim}/bin/maim -s -u | xclip -selection clipboard -t image/png -i'
|
||||
alias sc='${maim}/bin/maim -s -u | ${pkgs.xclip}/bin/xclip -selection clipboard -t image/png -i'
|
||||
alias tree='tree -CF'
|
||||
alias lock="betterlockscreen -l"
|
||||
alias nightmode="${redshift}/bin/redshift -P -O 1000"
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
pkgs:
|
||||
with pkgs.lib; let
|
||||
inherit (pkgs) callPackage;
|
||||
in {
|
||||
vscode-extensions = callPackage ./vscode.nix {};
|
||||
}
|
203
pkgs/vscode.nix
203
pkgs/vscode.nix
|
@ -1,203 +0,0 @@
|
|||
{ lib, vscode-utils }: with vscode-utils; {
|
||||
rust-lang.rust = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "rust-lang";
|
||||
name = "rust";
|
||||
version = "0.7.8";
|
||||
sha256 = "sha256-Y33agSNMVmaVCQdYd5mzwjiK5JTZTtzTkmSGTQrSNg0=";
|
||||
};
|
||||
meta.license = lib.licenses.mit;
|
||||
};
|
||||
|
||||
sirtori.indenticator = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "sirtori";
|
||||
name = "indenticator";
|
||||
version = "0.7.0";
|
||||
sha256 = "sha256-J5iNO6V5US+GFyNjNNA5u9H2pKPozWKjQWcLAhl+BjY=";
|
||||
};
|
||||
meta.license = lib.licenses.mit;
|
||||
};
|
||||
|
||||
Gimly81.matlab = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "Gimly81";
|
||||
name = "matlab";
|
||||
version = "2.3.1";
|
||||
sha256 = "sha256-0vx5L9efxvubb+JFunJJKaPvSxfgmYZkDJOxpXAV6xs=";
|
||||
};
|
||||
meta.license = lib.licenses.mit;
|
||||
};
|
||||
|
||||
toasty-technologies.octave = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "toasty-technologies";
|
||||
name = "octave";
|
||||
version = "0.0.3";
|
||||
sha256 = "sha256-tbqblaBX+wqgasfGLsFp49xYxXi5CF39YPYs0QyANt0=";
|
||||
};
|
||||
};
|
||||
|
||||
zhwu95.riscv = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "zhwu95";
|
||||
name = "riscv";
|
||||
version = "0.0.8";
|
||||
sha256 = "sha256-PXaHSEXoN0ZboHIoDg37tZ+Gv6xFXP4wGBS3YS/53TY=";
|
||||
};
|
||||
};
|
||||
|
||||
tomoki1207.pdf = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "tomoki1207";
|
||||
name = "pdf";
|
||||
version = "1.2.0";
|
||||
sha256 = "sha256-/2u2yfAmSVBvfXIMt2VokkeYH8q8Y9Ca9YSDuwwpkq0=";
|
||||
};
|
||||
};
|
||||
|
||||
vscode-icons-team.vscode-icons = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "vscode-icons-team";
|
||||
name = "vscode-icons";
|
||||
version = "12.0.0";
|
||||
sha256 = "sha256-TQ/GPxNgbMBVlp+KNRd+M0vMxFSAjld/CCbVS9C1DuA=";
|
||||
};
|
||||
};
|
||||
|
||||
dan-c-underwood.arm = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "dan-c-underwood";
|
||||
name = "arm";
|
||||
version = "1.7.4";
|
||||
sha256 = "sha256-gZBM980AoD+0wnfHXJK9sqCuuLtRY08JnO3Qdq/TRfc=";
|
||||
};
|
||||
};
|
||||
|
||||
mshr-h.VerilogHDL = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "mshr-h";
|
||||
name = "VerilogHDL";
|
||||
version = "1.5.4";
|
||||
sha256 = "sha256-WxVEP37Z+hATTOZSozYSSGtDUSMKAO/nA6ORXbpjGMU=";
|
||||
};
|
||||
};
|
||||
|
||||
rashwell.tcl = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "rashwell";
|
||||
name = "tcl";
|
||||
version = "0.1.0";
|
||||
sha256 = "sha256-k8I/W3g98r/YCyIURgm7hh+0Bm0lg4Mdh/r8HsPSoX0=";
|
||||
};
|
||||
};
|
||||
|
||||
xshrim.txt-syntax = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "xshrim";
|
||||
name = "txt-syntax";
|
||||
version = "0.2.1";
|
||||
sha256 = "sha256-5MOHyTHAefD4X9dpMCJ1ArxBqvHRLfFjENXkIPmAw4M=";
|
||||
};
|
||||
};
|
||||
|
||||
ZixuanWang.linkerscript = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "ZixuanWang";
|
||||
name = "linkerscript";
|
||||
version = "1.0.2";
|
||||
sha256 = "sha256-J6j4tXJ+gQWGJnMiqoIqJT2kGs/m8Njjm9pX9NCvJWc=";
|
||||
};
|
||||
};
|
||||
|
||||
hediet.vscode-drawio = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "hediet";
|
||||
name = "vscode-drawio";
|
||||
version = "1.6.4";
|
||||
sha256 = "sha256-+VYdFk9VCp3KnvOASJ+jJSb1NBwykBlnd8EuSKw8sKI=";
|
||||
};
|
||||
};
|
||||
|
||||
aaron-bond.better-comments = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "aaron-bond";
|
||||
name = "better-comments";
|
||||
version = "3.0.2";
|
||||
sha256 = "sha256-hQmA8PWjf2Nd60v5EAuqqD8LIEu7slrNs8luc3ePgZc=";
|
||||
};
|
||||
};
|
||||
|
||||
streetsidesoftware.code-spell-checker = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "streetsidesoftware";
|
||||
name = "code-spell-checker";
|
||||
version = "2.10.1";
|
||||
sha256 = "sha256-FeYkSML6QYtuIHIbAovOqlPwkKfNkHr7IdMCWwkynQ0=";
|
||||
};
|
||||
};
|
||||
|
||||
wayou.vscode-todo-highlight = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "wayou";
|
||||
name = "vscode-todo-highlight";
|
||||
version = "1.0.5";
|
||||
sha256 = "sha256-CQVtMdt/fZcNIbH/KybJixnLqCsz5iF1U0k+GfL65Ok=";
|
||||
};
|
||||
};
|
||||
|
||||
xaver.clang-format = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "xaver";
|
||||
name = "clang-format";
|
||||
version = "1.9.0";
|
||||
sha256 = "sha256-q9DvkXbv+GTyeMVIyUQDK49Njsl9msbnOD1gyS4ljC8=";
|
||||
};
|
||||
};
|
||||
|
||||
yzhang.markdown-all-in-one = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "yzhang";
|
||||
name = "markdown-all-in-one";
|
||||
version = "3.4.4";
|
||||
sha256 = "sha256-2lZfWP+yk0Dp8INLjlJY5ROGu0sLaWhb4fT+O9xGg0s=";
|
||||
};
|
||||
};
|
||||
|
||||
christian-kohler.path-intellisense = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "christian-kohler";
|
||||
name = "path-intellisense";
|
||||
version = "2.8.1";
|
||||
sha256 = "sha256-lTKzMphkGgOG2XWqz3TW2G9sISBc/kG7oXqcIH8l+Mg=";
|
||||
};
|
||||
};
|
||||
|
||||
sukumo28.wav-preview = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "sukumo28";
|
||||
name = "wav-preview";
|
||||
version = "2.0.4";
|
||||
sha256 = "sha256-N7Scz3vjDws4oTMqrM3mSANeW85GGpBUY2xfZx+WezY=";
|
||||
};
|
||||
};
|
||||
|
||||
oderwat.indent-rainbow = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "oderwat";
|
||||
name = "indent-rainbow";
|
||||
version = "8.3.1";
|
||||
sha256 = "sha256-dOicya0B2sriTcDSdCyhtp0Mcx5b6TUaFKVb0YU3jUc=";
|
||||
};
|
||||
};
|
||||
|
||||
ms-python.python = buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "ms-python";
|
||||
name = "python";
|
||||
version = "2022.19.13141010";
|
||||
sha256 = "sha256-8LbjpXLAAwK/oEPwpX+N1sWkSFNzQfWAkaBEQr49SQk=";
|
||||
};
|
||||
};
|
||||
# para obtener el sha: lib.fakeSha256
|
||||
}
|
Loading…
Reference in a new issue