forked from nix-community/nix-doom-emacs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
flake.nix
106 lines (100 loc) · 3.59 KB
/
flake.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
/* Usage example in flake.nix:
{
inputs = {
home-manager.url = "github:rycee/home-manager";
nix-doom-emacs.url = "github:nix-community/nix-doom-emacs/flake";
};
outputs = {
self,
nixpkgs,
home-manager,
nix-doom-emacs,
...
}: {
nixosConfigurations.exampleHost = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
home-manager.nixosModules.home-manager
{
home-manager.users.exampleUser = { pkgs, ... }: {
imports = [ nix-doom-emacs.hmModule ];
home.doom-emacs = {
enable = true;
doomPrivateDir = ./path/to/doom.d;
};
};
}
];
};
};
}
*/
{
description = "nix-doom-emacs home-manager module";
inputs = {
doom-emacs.url = "github:doomemacs/doomemacs/master";
doom-emacs.flake = false;
doom-snippets.url = "github:doomemacs/snippets";
doom-snippets.flake = false;
emacs-overlay.url = "github:nix-community/emacs-overlay";
emacs-overlay.flake = false;
emacs-so-long.url = "github:hlissner/emacs-so-long";
emacs-so-long.flake = false;
evil-escape.url = "github:hlissner/evil-escape";
evil-escape.flake = false;
evil-markdown.url = "github:Somelauw/evil-markdown";
evil-markdown.flake = false;
evil-org-mode.url = "github:hlissner/evil-org-mode";
evil-org-mode.flake = false;
evil-quick-diff.url = "github:rgrinberg/evil-quick-diff";
evil-quick-diff.flake = false;
explain-pause-mode.url = "github:lastquestion/explain-pause-mode";
explain-pause-mode.flake = false;
format-all.url = "github:lassik/emacs-format-all-the-code/47d862d40a088ca089c92cd393c6dca4628f87d3";
format-all.flake = false;
nix-straight.url = "github:nix-community/nix-straight.el";
nix-straight.flake = false;
nose.url = "github:emacsattic/nose";
nose.flake = false;
ob-racket.url = "github:xchrishawk/ob-racket";
ob-racket.flake = false;
org-contrib.url = "github:emacsmirror/org-contrib";
org-contrib.flake = false;
org-yt.url = "github:TobiasZawada/org-yt";
org-yt.flake = false;
org.url = "github:emacs-straight/org-mode";
org.flake = false;
php-extras.url = "github:arnested/php-extras";
php-extras.flake = false;
revealjs.url = "github:hakimel/reveal.js";
revealjs.flake = false;
rotate-text.url = "github:debug-ito/rotate-text.el";
rotate-text.flake = false;
sln-mode.url = "github:sensorflo/sln-mode";
sln-mode.flake = false;
ts-fold.url = "github:jcs-elpa/ts-fold";
ts-fold.flake = false;
ws-butler.url = "github:hlissner/ws-butler";
ws-butler.flake = false;
nixpkgs.url = "nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
flake-compat.url = "github:edolstra/flake-compat";
flake-compat.flake = false;
};
outputs = { self, nixpkgs, flake-utils, emacs-overlay, ... }@inputs:
let inherit (flake-utils.lib) eachDefaultSystem eachSystem;
in eachDefaultSystem (system:
let pkgs = import nixpkgs { inherit system; };
in {
devShell = pkgs.mkShell {
buildInputs =
[ (pkgs.python3.withPackages (ps: with ps; [ PyGithub ])) ];
};
package = { dependencyOverrides ? { }, ... }@args:
pkgs.callPackage self
(args // { dependencyOverrides = (inputs // dependencyOverrides); });
checks = import ./checks.nix { inherit system; } inputs;
}) // {
hmModule = import ./modules/home-manager.nix inputs;
};
}