diff --git a/home/modules/development.nix b/home/modules/development.nix index 5e17a7a92..326193f61 100644 --- a/home/modules/development.nix +++ b/home/modules/development.nix @@ -1,10 +1,22 @@ { config, lib, pkgs, ... }: +let + + clj2nix = pkgs.callPackage (pkgs.fetchFromGitHub { + owner = "hlolli"; + repo = "clj2nix"; + rev = "3ab3480a25e850b35d1f532a5e4e7b3202232383"; + sha256 = "1lry026mlpxp1j563qs13nhxf37i2zpl7lh0lgfdwc44afybqka6"; + }) {}; + +in + with lib; { imports = [ ./development/kube.nix + ./development/urbint.nix ]; home.packages = with pkgs; [ @@ -17,20 +29,14 @@ with lib; entr gnumake inetutils - (import (pkgs.fetchFromGitHub { - owner = "moretea"; - repo = "yarn2nix"; - rev = "9e7279edde2a4e0f5ec04c53f5cd64440a27a1ae"; - sha256 = "0zz2lrwn3y3rb8gzaiwxgz02dvy3s552zc70zvfqc0zh5dhydgn7"; - }) { inherit pkgs; }).yarn2nix - (pkgs.callPackage (pkgs.fetchFromGitHub { - owner = "hlolli"; - repo = "clj2nix"; - rev = "3ab3480a25e850b35d1f532a5e4e7b3202232383"; - sha256 = "1lry026mlpxp1j563qs13nhxf37i2zpl7lh0lgfdwc44afybqka6"; - }) {}) - ] ++ - optional (stdenv.isLinux) julia; + + clj2nix + + haskellPackages.Agda + AgdaStdlib + + (import ../pkgs/clang-tools { inherit pkgs; }) + ] ++ optional (stdenv.isLinux) julia; programs.git = { enable = true; @@ -75,12 +81,6 @@ with lib; \unset QUIET ''; - home.file.".ipython/profile_default/ipython_config.py".text = '' - c.InteractiveShellApp.exec_lines = ['%autoreload 2'] - c.InteractiveShellApp.extensions = ['autoreload'] - c.TerminalInteractiveShell.editing_mode = 'vi' - ''; - programs.readline = { enable = true; extraConfig = '' diff --git a/home/modules/development/urbint.nix b/home/modules/development/urbint.nix new file mode 100644 index 000000000..6958e3155 --- /dev/null +++ b/home/modules/development/urbint.nix @@ -0,0 +1,45 @@ +# urbint-only dev stuff +{ config, lib, pkgs, ... }: + +let + + yarn2nix = (import (pkgs.fetchFromGitHub { + owner = "moretea"; + repo = "yarn2nix"; + rev = "9e7279edde2a4e0f5ec04c53f5cd64440a27a1ae"; + sha256 = "0zz2lrwn3y3rb8gzaiwxgz02dvy3s552zc70zvfqc0zh5dhydgn7"; + }) { inherit pkgs; }).yarn2nix; + +in + +{ + home.packages = with pkgs; [ + yarn2nix + python36 + python36Packages.ipython + ]; + + programs.zsh = { + shellAliases = { + ipy = "ipython"; + amerge = "alembic merge heads"; + }; + + initExtra = '' + # Alembic {{{ + function aup() { + alembic upgrade ''${1:-head} + } + + function adown() { + alembic downgrade ''${1:--1} + } + ''; + }; + + home.file.".ipython/profile_default/ipython_config.py".text = '' + c.InteractiveShellApp.exec_lines = ['%autoreload 2'] + c.InteractiveShellApp.extensions = ['autoreload'] + c.TerminalInteractiveShell.editing_mode = 'vi' + ''; +}