This commit is contained in:
Andrea Ciceri 2023-02-12 18:24:04 +01:00
parent 3a60ed192d
commit 394208f8e7
No known key found for this signature in database
GPG key ID: A1FC89532D1C5654
6 changed files with 90 additions and 19 deletions

View file

@ -7,7 +7,7 @@ on:
- update_flake_lock_action
jobs:
build-thinkpad:
build:
if: ${{ always() }}
runs-on: ubuntu-latest
steps:

View file

@ -19,8 +19,8 @@
flake-parts.lib.mkFlake {inherit inputs;} {
systems = ["x86_64-linux"];
imports = [
# flake-parts.flakeModules.easyOverlay
./packages
./hmModules
./formatter
];

View file

@ -1,7 +1,8 @@
{self, inputs, ...}: {
flake.overlays.default = self: super: {
ccrEmacs = self.packages.${self.system}.ccrEmacs;
};
{
self,
inputs,
...
}: {
flake.hmModules = {
default = self.hmModules.ccrEmacs;
ccrEmacs = {
@ -22,9 +23,9 @@
ccrEmacsConfig = config.ccrEmacs;
in
lib.mkIf ccrEmacsConfig.enable {
nixpkgs.overlays = [(self: super: {
ccrEmacs = super.hello;
})];
nixpkgs.overlays = [
inputs.emacs-overlay.overlays.default
];
programs.emacs = {
enable = true;
package = ccrEmacsConfig.package;

7
overlays/default.nix Normal file
View file

@ -0,0 +1,7 @@
{
perSystem = {config, ...}: {
overlayAttrs = {
inherit (config.packages) ccrEmacs;
};
};
}

View file

@ -1,21 +1,38 @@
{inputs, ...}: {
imports = [
inputs.flake-parts.flakeModules.easyOverlay
];
perSystem = {
config,
self',
inputs',
pkgs,
final,
...
}: {
}: let
inherit (inputs.emacs-overlay.overlays.default pkgs pkgs) emacsPackagesFor;
in {
packages = {
ccrEmacs =
ccrEmacsWithoutPackages =
(inputs'.emacs-overlay.packages.emacsPgtk.override {
treeSitterPlugins = builtins.attrValues (builtins.removeAttrs pkgs.tree-sitter-grammars ["recurseForDerivations"]);
treeSitterPlugins =
builtins.attrValues
(builtins.removeAttrs pkgs.tree-sitter-grammars ["recurseForDerivations"]);
})
.overrideAttrs (_: {
name = "ccr-emacs-${inputs.emacs-src.rev}";
src = inputs.emacs-src.outPath;
version = inputs.emacs-src.rev;
});
ccrEmacs =
(emacsPackagesFor self'.packages.ccrEmacsWithoutPackages).emacsWithPackages
(import ./packages.nix pkgs);
default = self'.packages.ccrEmacs;
};
apps = {
ccrEmacs.program = "${self'.packages.ccrEmacs}/bin/emacs";
default = self'.apps.ccrEmacs;
};
};
}

46
packages/packages.nix Normal file
View file

@ -0,0 +1,46 @@
pkgs: epkgs:
with epkgs; [
meow
ef-themes
delight
vertico
marginalia
all-the-icons
all-the-icons-completion
consult
orderless
embark
embark-consult
fira-code-mode
vterm
setup
magit
magit-delta
diff-hl
corfu
corfu-terminal
corfu-doc
kind-icon
cape
which-key
nix-mode
envrc
flycheck
flycheck-posframe
flycheck-inline
consult-flycheck
popper
paredit
tree-sitter
tree-sitter-langs
yaml-mode
hl-todo
markdown-mode
haskell-mode
terraform-mode
org-roam-ui
org-roam
dirvish
diredfl
pdf-tools
]