summaryrefslogtreecommitdiff
path: root/home/default.nix
diff options
context:
space:
mode:
authorAlejandro Soto <alejandro@34project.org>2022-04-19 07:31:42 -0600
committerAlejandro Soto <alejandro@34project.org>2022-04-19 07:31:42 -0600
commit440cb12ec5e47cec3cafccb9a5ba4734b3bbc5ac (patch)
treebb87bd57d2f944a333555e507d8b376fa3aa4eca /home/default.nix
parentb058943d07dad50cfa8c5907a3da06ffe9e1d227 (diff)
home, shenvs: implement home config local.workstation
Diffstat (limited to '')
-rw-r--r--home/default.nix299
1 files changed, 154 insertions, 145 deletions
diff --git a/home/default.nix b/home/default.nix
index 4f1da74..f254899 100644
--- a/home/default.nix
+++ b/home/default.nix
@@ -3,183 +3,192 @@
with lib; {
imports = [ ./unfree.nix ];
- nixpkgs.overlays = [ nur.overlay self.overlay ];
+ options.local.workstation = with lib.types; mkOption {
+ type = bool;
+ };
- nix.registry = {
- "nixpkgs".flake = nixpkgs;
- "nur".flake = nur;
+ config = {
+ nixpkgs.overlays = [ nur.overlay self.overlay ];
- "system".to = {
- type = "path";
- path = "/home/ale/nix";
- };
- };
+ nix.registry = {
+ "nixpkgs".flake = nixpkgs;
+ "nur".flake = nur;
- home = {
- # This value determines the Home Manager release that your
- # configuration is compatible with. This helps avoid breakage
- # when a new Home Manager release introduces backwards
- # incompatible changes.
- #
- # You can update Home Manager without changing this value. See
- # the Home Manager release notes for a list of state version
- # changes in each release.
- stateVersion = "21.11";
-
- username = "ale";
- homeDirectory = "/home/ale";
-
- sessionVariables = {
- EDITOR = "nvim";
- LESSHISTFILE = "/dev/null";
+ "system".to = {
+ type = "path";
+ path = "/home/ale/nix";
+ };
};
- language.base = "es_CR.UTF-8";
+ home = {
+ # This value determines the Home Manager release that your
+ # configuration is compatible with. This helps avoid breakage
+ # when a new Home Manager release introduces backwards
+ # incompatible changes.
+ #
+ # You can update Home Manager without changing this value. See
+ # the Home Manager release notes for a list of state version
+ # changes in each release.
+ stateVersion = "21.11";
+
+ username = "ale";
+ homeDirectory = "/home/ale";
+
+ sessionVariables = {
+ EDITOR = "nvim";
+ LESSHISTFILE = "/dev/null";
+ };
- file = let
- symlink = path: { source = config.lib.file.mkOutOfStoreSymlink path; };
- #TODO: No sirve, creo que por readline
- devNull = symlink "/dev/null";
- in {
- "vtmp" = symlink "/run/user/1000/vtmp";
- ".calc_history" = devNull;
- ".units_history" = devNull;
+ language.base = "es_CR.UTF-8";
+
+ file = let
+ symlink = path: { source = config.lib.file.mkOutOfStoreSymlink path; };
+ #TODO: No sirve, creo que por readline
+ devNull = symlink "/dev/null";
+ in {
+ "vtmp" = symlink "/run/user/1000/vtmp";
+ ".calc_history" = devNull;
+ ".units_history" = devNull;
+
+ ".shenvs".text = let
+ keeps = { gcKeep ? [] }: concatStringsSep "\n" (map toString gcKeep);
+ in keeps (import ../shenvs/config.nix {
+ inherit (pkgs.local) shenvs;
+ inherit config lib;
+ });
+ };
- ".shenvs".text = let
- keeps = { gcKeep ? [] }: concatStringsSep "\n" (map toString gcKeep);
- in keeps (import ../shenvs/config.nix pkgs.local.shenvs);
+ packages = import ./path.nix pkgs;
};
- packages = import ./path.nix pkgs;
- };
+ fonts.fontconfig.enable = true;
- fonts.fontconfig.enable = true;
+ gtk = {
+ enable = true;
+ gtk3.bookmarks = [ "file:///home/ale/vtmp" "file:///home/ale/tmp" ];
- gtk = {
- enable = true;
- gtk3.bookmarks = [ "file:///home/ale/vtmp" "file:///home/ale/tmp" ];
+ gtk2.extraConfig = ''
+ gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
+ gtk-menu-images=1
+ gtk-button-images=1
+ '';
- gtk2.extraConfig = ''
- gtk-toolbar-style=GTK_TOOLBAR_BOTH_HORIZ
- gtk-menu-images=1
- gtk-button-images=1
- '';
+ font = {
+ package = pkgs.noto-fonts;
+ name = "Noto Sans Regular";
+ #size = 14; <- caga layout de páginas
+ };
- font = {
- package = pkgs.noto-fonts;
- name = "Noto Sans Regular";
- #size = 14; <- caga layout de páginas
+ theme = {
+ package = pkgs.materia-theme;
+ name = "Materia-dark";
+ };
};
- theme = {
- package = pkgs.materia-theme;
- name = "Materia-dark";
+ qt = {
+ enable = true;
+ platformTheme = "gtk";
};
- };
-
- qt = {
- enable = true;
- platformTheme = "gtk";
- };
- xdg = {
- enable = true;
- configFile = {
- "i3/config".text = import ./i3-config.nix {
- inherit (pkgs) i3lock-color xautolock;
- inherit (pkgs.xorg) setxkbmap;
- inherit (pkgs.local) st tmux-lift;
-
- i3status-rust = config.programs.i3status-rust.package;
- rofi = config.programs.rofi.finalPackage;
+ xdg = {
+ enable = true;
+ configFile = {
+ "i3/config".text = import ./i3-config.nix {
+ inherit (pkgs) i3lock-color xautolock;
+ inherit (pkgs.xorg) setxkbmap;
+ inherit (pkgs.local) st tmux-lift;
+
+ i3status-rust = config.programs.i3status-rust.package;
+ rofi = config.programs.rofi.finalPackage;
+ };
};
};
- };
-
- systemd.user.tmpfiles.rules = [
- "d %t/vtmp 0700"
- ];
-
- xsession = {
- enable = true;
- # Cambiar po windowManager.i3.enable al migrar
- windowManager.command = "${pkgs.i3-gaps}/bin/i3";
- };
- programs = {
- home-manager.enable = true;
+ systemd.user.tmpfiles.rules = [
+ "d %t/vtmp 0700"
+ ];
- zsh = {
+ xsession = {
enable = true;
- enableAutosuggestions = true;
- enableSyntaxHighlighting = true;
- initExtra = import ./zshrc.nix pkgs;
+ # Cambiar po windowManager.i3.enable al migrar
+ windowManager.command = "${pkgs.i3-gaps}/bin/i3";
};
- firefox = {
- enable = true;
+ programs = {
+ home-manager.enable = true;
- profiles."main.profile" = {
- id = 0;
- name = "default";
+ zsh = {
+ enable = true;
+ enableAutosuggestions = true;
+ enableSyntaxHighlighting = true;
+ initExtra = import ./zshrc.nix pkgs;
};
- extensions = with pkgs.nur.repos.rycee.firefox-addons; [
- decentraleyes
- darkreader
- keepassxc-browser
- old-reddit-redirect
- privacy-badger
- ublock-origin
- umatrix
- ];
- };
+ firefox = {
+ enable = true;
+
+ profiles."main.profile" = {
+ id = 0;
+ name = "default";
+ };
+
+ extensions = with pkgs.nur.repos.rycee.firefox-addons; [
+ decentraleyes
+ darkreader
+ keepassxc-browser
+ old-reddit-redirect
+ privacy-badger
+ ublock-origin
+ umatrix
+ ];
+ };
- git = {
- enable = true;
- userName = "Alejandro Soto";
- userEmail = "alejandro@34project.org";
- };
+ git = {
+ enable = true;
+ userName = "Alejandro Soto";
+ userEmail = "alejandro@34project.org";
+ };
- i3status-rust = {
- enable = true;
- };
+ i3status-rust = {
+ enable = true;
+ };
- neovim = {
- enable = true;
- withRuby = false;
- withPython3 = false;
-
- extraConfig = ''
- set number " Enable line numbering
- set relativenumber " Enable relative line numbering
- set tabstop=4 " Set tap stop to 4
- set shiftwidth=4 " Set shift width to 4 (same as tabstop)
- set viminfo= " No tracking
- '';
- };
+ neovim = {
+ enable = true;
+ withRuby = false;
+ withPython3 = false;
+
+ extraConfig = ''
+ set number " Enable line numbering
+ set relativenumber " Enable relative line numbering
+ set tabstop=4 " Set tap stop to 4
+ set shiftwidth=4 " Set shift width to 4 (same as tabstop)
+ set viminfo= " No tracking
+ '';
+ };
- rofi = {
- enable = true;
- theme = "DarkBlue";
- };
+ rofi = {
+ enable = true;
+ theme = "DarkBlue";
+ };
- tmux = {
- enable = true;
- aggressiveResize = true;
- clock24 = true;
- escapeTime = 10;
- terminal = "xterm-256color";
- keyMode = "vi";
-
- 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"
- '';
+ tmux = {
+ enable = true;
+ aggressiveResize = true;
+ clock24 = true;
+ escapeTime = 10;
+ terminal = "xterm-256color";
+ keyMode = "vi";
+
+ 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"
+ '';
+ };
};
};
}