Removes a whole bunch of manually pinned packages that were moved into stable in 18.09. However, it should be noted that `sly` is again broken in stable.
		
			
				
	
	
		
			123 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			123 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| # Derivation for Emacs pre-configured with packages that I need.
 | |
| #
 | |
| # TODO: Fix sly (again)
 | |
| 
 | |
| { pkgs }:
 | |
| 
 | |
| with pkgs; with emacsPackagesNg;
 | |
| let emacsWithPackages = (emacsPackagesNgGen emacs).emacsWithPackages;
 | |
| 
 | |
| # As the EXWM-README points out, XELB should be built from source if
 | |
| # EXWM is.
 | |
| xelb = melpaBuild {
 | |
|   pname   = "xelb";
 | |
|   ename   = "xelb";
 | |
|   version = "0.15";
 | |
|   recipe  = builtins.toFile "recipe" ''
 | |
|     (xelb :fetcher github
 | |
|           :repo "ch11ng/xelb")
 | |
|   '';
 | |
| 
 | |
|   packageRequires = [ cl-generic emacs ];
 | |
| 
 | |
|   src = fetchFromGitHub {
 | |
|     owner  = "ch11ng";
 | |
|     repo   = "xelb";
 | |
|     rev    = "b8f168b401977098fe2b30f4ca32629c0ab6eb83";
 | |
|     sha256 = "1ack1h68x8ia0ji6wbhmayrakq35p5sgrrl6qvha3ns3pswc0pl9";
 | |
|  };
 | |
| };
 | |
| 
 | |
| # EXWM pinned to a newer version than what is released due to a
 | |
| # potential fix for ch11ng/exwm#425.
 | |
| exwm = melpaBuild {
 | |
|   pname   = "exwm";
 | |
|   ename   = "exwm";
 | |
|   version = "0.19";
 | |
|   recipe  = builtins.toFile "recipe" ''
 | |
|     (exwm :fetcher github
 | |
|           :repo "ch11ng/exwm")
 | |
|   '';
 | |
| 
 | |
|   packageRequires = [ xelb ];
 | |
| 
 | |
|   src = fetchFromGitHub {
 | |
|     owner  = "ch11ng";
 | |
|     repo   = "exwm";
 | |
|     rev    = "472f7cb82b67b98843f10c12e6bda9b8ae7262bc";
 | |
|     sha256 = "19gflsrb19aijf2xcw7j2m658qad21nbwziw38s1h2jw66vhk8dj";
 | |
|  };
 | |
| };
 | |
| 
 | |
| in emacsWithPackages(epkgs:
 | |
|   # Actual ELPA packages (the enlightened!)
 | |
|   (with epkgs.elpaPackages; [
 | |
|     ace-window
 | |
|     adjust-parens
 | |
|     avy
 | |
|     company
 | |
|     pinentry
 | |
|     rainbow-mode
 | |
|     undo-tree
 | |
|     which-key
 | |
|   ]) ++
 | |
| 
 | |
|   # MELPA packages:
 | |
|   (with epkgs.melpaPackages; [
 | |
|     browse-kill-ring
 | |
|     cargo
 | |
|     counsel
 | |
|     counsel-notmuch
 | |
|     dash
 | |
|     dash-functional
 | |
|     dockerfile-mode
 | |
|     edit-server
 | |
|     eglot
 | |
|     elixir-mode
 | |
|     erlang
 | |
|     exwm
 | |
|     go-mode
 | |
|     gruber-darker-theme
 | |
|     haskell-mode
 | |
|     ht
 | |
|     hydra
 | |
|     idle-highlight-mode
 | |
|     intero
 | |
|     ivy
 | |
|     ivy-pass
 | |
|     ivy-prescient
 | |
|     jq-mode
 | |
|     kotlin-mode
 | |
|     magit
 | |
|     markdown-mode
 | |
|     markdown-toc
 | |
|     multi-term
 | |
|     multiple-cursors
 | |
|     nginx-mode
 | |
|     nix-mode
 | |
|     paredit
 | |
|     password-store
 | |
|     pg
 | |
|     pkgs.notmuch
 | |
|     prescient
 | |
|     rainbow-delimiters
 | |
|     restclient
 | |
|     rust-mode
 | |
|     s
 | |
|     # sly
 | |
|     smartparens
 | |
|     string-edit
 | |
|     swiper
 | |
|     telephone-line
 | |
|     terraform-mode
 | |
|     toml-mode
 | |
|     use-package
 | |
|     uuidgen
 | |
|     web-mode
 | |
|     websocket
 | |
|     yaml-mode
 | |
|   ]) ++
 | |
| 
 | |
|   # Custom packaged Emacs packages:
 | |
|   [ xelb exwm ]
 | |
| )
 |