diff options
author | Alan Pearce | 2017-09-09 16:16:49 +0200 |
---|---|---|
committer | Alan Pearce | 2017-09-09 16:49:30 +0200 |
commit | 1eb55b1642a209feb1b8a245edabe3361c62cb5d (patch) | |
tree | 1cbfcec489ef53f3b55c12b9d481c602157daea4 /packages | |
parent | f1a49dcee9df5c96ec5c261373c43c6da70701e4 (diff) | |
download | nixos-configuration-1eb55b1642a209feb1b8a245edabe3361c62cb5d.tar.lz nixos-configuration-1eb55b1642a209feb1b8a245edabe3361c62cb5d.tar.zst nixos-configuration-1eb55b1642a209feb1b8a245edabe3361c62cb5d.zip |
user-interface: Import Emacs setup
Diffstat (limited to 'packages')
-rw-r--r-- | packages/emacs.nix | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/packages/emacs.nix b/packages/emacs.nix new file mode 100644 index 0000000..30b21c2 --- /dev/null +++ b/packages/emacs.nix @@ -0,0 +1,166 @@ +{ + pkgs, + emacs ? pkgs.emacs, + stdenv +}: + +let + myEmacs = emacs; + emacsWithPackages = (pkgs.emacsPackagesNgGen myEmacs).emacsWithPackages; + + elpaBuild = import <nixpkgs/pkgs/build-support/emacs/elpa.nix> { + inherit (pkgs) fetchurl lib stdenv texinfo; + emacs = myEmacs; + }; + + hook-helpers = pkgs.callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild { + pname = "hook-helpers"; + version = "1.1"; + src = fetchurl { + url = "http://elpa.gnu.org/packages/hook-helpers-1.1.tar"; + sha256 = "0xvabl0lfc0ijr98clsyh0bqk2fdi1ncl0knn58j2p30gn9958i5"; + }; + packageRequires = []; + meta = { + homepage = https://savannah.nongnu.org/projects/hook-helpers-el/; + license = lib.licenses.free; + }; + }) { + inherit elpaBuild; + inherit (pkgs) fetchurl lib; + }; + + dired-du = pkgs.callPackage ({ elpaBuild, fetchurl, lib }: elpaBuild { + pname = "dired-du"; + version = "0.5"; + src = fetchurl { + url = "http://elpa.gnu.org/packages/dired-du-0.5.tar"; + sha256 = "09yj37p2fa5f81fqrzwghjkyy2ydsf4rbkfwpn2yyvzd5nd97bpl"; + }; + packageRequires = []; + meta = { + homepage = https://github.com/calancha/dired-du; + license = lib.licenses.free; + }; + }) { + inherit elpaBuild; + inherit (pkgs) fetchurl lib; + }; +in + emacsWithPackages (epkgs: (with epkgs.melpaStablePackages; [ + diminish + bind-key + use-package + smartparens + ]) ++ (with epkgs.melpaPackages; [ + ace-link + ace-window + add-node-modules-path + ag + auto-compile + avy + bbdb + beginend + cider + clj-refactor + clojure-mode + cmd-to-echo + command-log-mode + company + company-go + company-restclient + company-tern + company-web + counsel + counsel-projectile + crux + cyphejor + dired-narrow + dired-subtree + discover-my-major + dockerfile-mode + dtrt-indent + dumb-jump + easy-hugo + editorconfig + elisp-slime-nav + emmet-mode + ensime + exec-path-from-shell + expand-region + eyebrowse + flow-minor-mode + flycheck + flycheck-flow + flycheck-pos-tip + flycheck-vale + fontawesome + geiser + ggtags + ghq + git-gutter-fringe + git-messenger + git-timemachine + go-eldoc + go-mode + go-projectile + goto-chg + haskell-mode + highlight-stages + helpful + imenu-anywhere + indium + jinja2-mode + js2-mode + js2-refactor + json-mode + ledger-mode + lua-mode + magit + markdown-mode + move-text + multiple-cursors + nginx-mode + nix-mode + nix-sandbox + outorg + outshine + navi-mode + org-journal + page-break-lines + paredit + password-store + projectile + projectile-ripgrep + quickrun + redshank + relative-buffers + restclient + ripgrep + rjsx-mode + scala-mode + scss-mode + shrink-whitespace + slime + smart-tabs-mode + smex + suggest + swiper + tern + toml-mode + undo-tree + visual-regexp + volatile-highlights + web-mode + white-theme + wgrep-ag + which-key + yaml-mode + ]) ++ (with epkgs.elpaPackages; [ + rainbow-mode + ]) ++ [ + # defined above + hook-helpers + dired-du + # From main packages set + ]) |