emacs with prisma and treesitter

This commit is contained in:
Ivan Dimitrov 2023-08-16 09:03:48 +03:00
parent 41d4dffeff
commit ebaa4f46a1
3 changed files with 113 additions and 21 deletions

View File

@ -16,6 +16,28 @@
"type": "gitlab" "type": "gitlab"
} }
}, },
"emacs-overlay": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1692125006,
"narHash": "sha256-D3UuE9aiKBFmNuzRfZLmNUlwujXDFeD8/ZSSaNwAuAs=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "ff4dba8979ddc3bfa40867d4f256cc7f0e635d75",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "emacs-overlay",
"type": "github"
}
},
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -32,6 +54,24 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1689068808,
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -97,6 +137,22 @@
"type": "indirect" "type": "indirect"
} }
}, },
"nixpkgs-stable": {
"locked": {
"lastModified": 1692025715,
"narHash": "sha256-tsRiiopGT7HA8d/cuk5xYBRXgdnnvD+JhUGUe3x7vmY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "09a137528c3aea3780720d19f99cd706f52c3823",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-23.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1670751203, "lastModified": 1670751203,
@ -114,6 +170,7 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"emacs-overlay": "emacs-overlay",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"simple-nixos-mailserver": "simple-nixos-mailserver" "simple-nixos-mailserver": "simple-nixos-mailserver"
@ -142,6 +199,21 @@
"type": "gitlab" "type": "gitlab"
} }
}, },
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"utils": { "utils": {
"locked": { "locked": {
"lastModified": 1605370193, "lastModified": 1605370193,

View File

@ -7,9 +7,14 @@
}; };
simple-nixos-mailserver.url = simple-nixos-mailserver.url =
"gitlab:simple-nixos-mailserver/nixos-mailserver"; "gitlab:simple-nixos-mailserver/nixos-mailserver";
emacs-overlay = {
url = "github:nix-community/emacs-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { self, nixpkgs, home-manager, simple-nixos-mailserver, ... }: { outputs = { self, nixpkgs, home-manager, simple-nixos-mailserver
, emacs-overlay, ... }: {
nixosConfigurations = { nixosConfigurations = {
laptop = nixpkgs.lib.nixosSystem { laptop = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
@ -28,7 +33,10 @@
homeConfigurations = { homeConfigurations = {
ivand = home-manager.lib.homeManagerConfiguration { ivand = home-manager.lib.homeManagerConfiguration {
modules = [ ./home/laptop ]; modules = [ ./home/laptop ];
pkgs = import nixpkgs { system = "x86_64-linux"; }; pkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [ emacs-overlay.overlay ];
};
}; };
}; };
}; };

View File

@ -10,6 +10,18 @@
programs.emacs = { programs.emacs = {
enable = true; enable = true;
package = pkgs.emacs29-pgtk; package = with pkgs;
(emacsPackagesFor emacs-unstable).emacsWithPackages (epkgs:
with epkgs; [
treesit-grammars.with-all-grammars
treesit-auto
prisma-mode
]);
extraConfig = ''
(use-package treesit-auto
:config
(global-treesit-auto-mode))
(use-package prisma-mode)
'';
}; };
} }