From 9036dc7c32739d302cdd6fe51fe2d01418a99c9d Mon Sep 17 00:00:00 2001 From: Griffin Smith Date: Tue, 26 May 2020 10:43:19 -0400 Subject: Beginnings of config for Darwin machines Split out a platforms/ directory with a linux.nix and darwin.nix, and starting splitting things out between the two --- home/modules/alsi.nix | 41 ++++++++++++----- home/modules/common.nix | 38 ++++++++++++++++ home/modules/development.nix | 6 ++- home/modules/emacs.nix | 106 +++++++++++++++++++++++-------------------- home/modules/games.nix | 22 +++++---- 5 files changed, 142 insertions(+), 71 deletions(-) create mode 100644 home/modules/common.nix (limited to 'home/modules') diff --git a/home/modules/alsi.nix b/home/modules/alsi.nix index cb9802e2ceea..e42524bb8884 100644 --- a/home/modules/alsi.nix +++ b/home/modules/alsi.nix @@ -1,29 +1,30 @@ { config, lib, pkgs, ... }: -let alsi = pkgs.callPackage ../../pkgs/alsi {}; +let alsi = pkgs.callPackage ~/code/system/pkgs/alsi {}; in { home.packages = [ alsi ]; - home.file.".config/alsi/alsi.logo" = { + xdg.configFile."alsi/alsi.logo" = { source = ./nixos-logo.txt; force = true; }; - home.file.".config/alsi/alsi.conf" = { + xdg.configFile."alsi/alsi.conf" = { + force = true; text = '' #!${pkgs.perl}/bin/perl scalar { ALSI_VERSION => "0.4.8", - COLORS_FILE => "/home/grfn/.config/alsi/alsi.colors", - DE_FILE => "/home/grfn/.config/alsi/alsi.de", + COLORS_FILE => "/${config.home.homeDirectory}/.config/alsi/alsi.colors", + DE_FILE => "/${config.home.homeDirectory}/.config/alsi/alsi.de", DEFAULT_COLOR_BOLD => "blue", DEFAULT_COLOR_NORMAL => "blue", DF_COMMAND => "df -Th -x sys -x tmpfs -x devtmpfs &>/dev/stdout", - GTK2_RC_FILE => "/home/grfn/.gtkrc-2.0", - GTK3_RC_FILE => "/home/grfn/.config/gtk-3.0/settings.ini", - LOGO_FILE => "/home/grfn/.config/alsi/alsi.logo", - OUTPUT_FILE => "/home/grfn/.config/alsi/alsi.output", + GTK2_RC_FILE => "/${config.home.homeDirectory}/.gtkrc-2.0", + GTK3_RC_FILE => "/${config.home.homeDirectory}/.config/gtk-3.0/settings.ini", + LOGO_FILE => "/${config.home.homeDirectory}/.config/alsi/alsi.logo", + OUTPUT_FILE => "/${config.home.homeDirectory}/.config/alsi/alsi.output", # PACKAGES_PATH => "/var/lib/pacman/local/", PS_COMMAND => "ps -A", USAGE_COLORS => 0, @@ -33,9 +34,27 @@ in USAGE_PRECENT_YELLOW => 85, USE_LOGO_FROM_FILE => 1, USE_VALUES_COLOR => 0, - WM_FILE => "/home/grfn/.config/alsi/alsi.wm", + WM_FILE => "/${config.home.homeDirectory}/.config/alsi/alsi.wm", } ''; - force = true; }; + + xdg.configFile."alsi/alsi.colors".text = '' + #!${pkgs.perl}/bin/perl + + # Colors for alsi + + scalar { + black => {normal => "\e[0;30m", bold => "\e[1;30m"}, + red => {normal => "\e[0;31m", bold => "\e[1;31m"}, + green => {normal => "\e[0;32m", bold => "\e[1;32m"}, + yellow => {normal => "\e[0;33m", bold => "\e[1;33m"}, + default => {normal => "\e[0;34m", bold => "\e[1;34m"}, + blue => {normal => "\e[0;34m", bold => "\e[1;34m"}, + purple => {normal => "\e[0;35m", bold => "\e[1;35m"}, + cyan => {normal => "\e[0;36m", bold => "\e[1;36m"}, + white => {normal => "\e[0;37m", bold => "\e[1;37m"}, + reset => "\e[0m", + } + ''; } diff --git a/home/modules/common.nix b/home/modules/common.nix new file mode 100644 index 000000000000..ad712a335bcd --- /dev/null +++ b/home/modules/common.nix @@ -0,0 +1,38 @@ +{ config, lib, pkgs, ... }: + +{ + imports = [ + ../modules/shell.nix + ../modules/development.nix + ../modules/emacs.nix + ../modules/vim.nix + ../modules/tarsnap.nix + ]; + + nixpkgs.config.allowUnfree = true; + programs.password-store.enable = true; + + impure.clonedRepos.passwordStore = { + github = "glittershark/pass"; + path = ".local/share/password-store"; + }; + + home.packages = with pkgs; [ + htop + killall + bind + zip unzip + tree + ncat + + gnupg + keybase + openssl + + # Nix things + nixfmt + nix-prefetch-github + nix-review + cachix + ]; +} diff --git a/home/modules/development.nix b/home/modules/development.nix index 3417b212618a..5e17a7a925ab 100644 --- a/home/modules/development.nix +++ b/home/modules/development.nix @@ -1,5 +1,7 @@ { config, lib, pkgs, ... }: +with lib; + { imports = [ ./development/kube.nix @@ -21,14 +23,14 @@ rev = "9e7279edde2a4e0f5ec04c53f5cd64440a27a1ae"; sha256 = "0zz2lrwn3y3rb8gzaiwxgz02dvy3s552zc70zvfqc0zh5dhydgn7"; }) { inherit pkgs; }).yarn2nix - julia (pkgs.callPackage (pkgs.fetchFromGitHub { owner = "hlolli"; repo = "clj2nix"; rev = "3ab3480a25e850b35d1f532a5e4e7b3202232383"; sha256 = "1lry026mlpxp1j563qs13nhxf37i2zpl7lh0lgfdwc44afybqka6"; }) {}) - ]; + ] ++ + optional (stdenv.isLinux) julia; programs.git = { enable = true; diff --git a/home/modules/emacs.nix b/home/modules/emacs.nix index 71d7cbf70efe..2a4babf5e1d2 100644 --- a/home/modules/emacs.nix +++ b/home/modules/emacs.nix @@ -1,5 +1,7 @@ { pkgs, lib, ... }: +with lib; + let # doom-emacs = pkgs.callPackage (builtins.fetchTarball { # url = https://github.com/vlaci/nix-doom-emacs/archive/master.tar.gz; @@ -8,7 +10,7 @@ let # # and packages.el files # }; in { - # imports = [ ./lib/cloneRepo.nix ]; + imports = [ ./lib/cloneRepo.nix ]; # home.packages = [ doom-emacs ]; # home.file.".emacs.d/init.el".text = '' @@ -16,61 +18,67 @@ in { # ''; # - home.packages = with pkgs; [ - # haskellPackages.Agda BROKEN + config = mkMerge [ + { + home.packages = with pkgs; [ + haskellPackages.Agda - # LaTeX (for org export) - (pkgs.texlive.combine { - inherit (pkgs.texlive) - scheme-basic collection-fontsrecommended ulem - fncychap titlesec tabulary varwidth framed fancyvrb float parskip - wrapfig upquote capt-of needspace; - }) + # LaTeX (for org export) + (pkgs.texlive.combine { + inherit (pkgs.texlive) + scheme-basic collection-fontsrecommended ulem + fncychap titlesec tabulary varwidth framed fancyvrb float parskip + wrapfig upquote capt-of needspace; + }) - ispell + ispell - ripgrep - coreutils - fd - clang - gnutls - ]; + ripgrep + coreutils + fd + clang + gnutls + ]; - nixpkgs.overlays = [ - (import (builtins.fetchTarball { - url = "https://github.com/nix-community/emacs-overlay/archive/54afb061bdd12c61bbfcc13bad98b7a3aab7d8d3.tar.gz"; - sha256 = "0hrbg65d5h0cb0nky7a46md7vlvhajq1hf0328l2f7ln9hznqz6j"; - })) - ]; + nixpkgs.overlays = [ + (import (builtins.fetchTarball { + url = "https://github.com/nix-community/emacs-overlay/archive/54afb061bdd12c61bbfcc13bad98b7a3aab7d8d3.tar.gz"; + sha256 = "0hrbg65d5h0cb0nky7a46md7vlvhajq1hf0328l2f7ln9hznqz6j"; + })) + ]; - programs.emacs = { - enable = true; - package = pkgs.emacsUnstable; - }; + programs.emacs = { + enable = true; + package = pkgs.emacsUnstable; + }; - impure.clonedRepos = { - orgClubhouse = { - github = "glittershark/org-clubhouse"; - path = "code/org-clubhouse"; - }; + impure.clonedRepos = { + orgClubhouse = { + github = "glittershark/org-clubhouse"; + path = "code/org-clubhouse"; + }; - doomEmacs = { - github = "hlissner/doom-emacs"; - path = ".emacs.d"; - after = ["emacs.d"]; - onClone = "bin/doom install"; - }; + doomEmacs = { + github = "hlissner/doom-emacs"; + path = ".emacs.d"; + after = ["emacs.d"]; + onClone = "bin/doom install"; + }; - "emacs.d" = { - github = "glittershark/emacs.d"; - path = ".doom.d"; - after = ["orgClubhouse"]; - }; - }; + "emacs.d" = { + github = "glittershark/emacs.d"; + path = ".doom.d"; + after = ["orgClubhouse"]; + }; + }; - # Notes - services.syncthing = { - enable = true; - tray = true; - }; + } + (mkIf pkgs.stdenv.isLinux { + # Notes + services.syncthing = { + enable = true; + tray = true; + }; + }) + ]; } diff --git a/home/modules/games.nix b/home/modules/games.nix index c68342ba6bb7..a9adf9c91036 100644 --- a/home/modules/games.nix +++ b/home/modules/games.nix @@ -1,6 +1,7 @@ { config, lib, pkgs, ... }: with pkgs; +with lib; let @@ -42,13 +43,16 @@ let chmod +x $out/bin/dwarf-fortress ''; -in { - imports = [ - ./obs.nix - ]; +in mkMerge [ + { + home.packages = [ + crawl + ]; + } + (mkIf stdenv.isLinux { + home.packages = [ + df + ]; + }) +] - home.packages = [ - crawl - df - ]; -} -- cgit 1.4.1