diff --git a/nixos/hosts/android/default.nix b/nixos/hosts/android/default.nix index e3ec504..eb25e91 100644 --- a/nixos/hosts/android/default.nix +++ b/nixos/hosts/android/default.nix @@ -4,20 +4,25 @@ ... }: { imports = [ - ../../modules/emacs ]; - environment.packages = with pkgs; [ - neovim - git - fastfetch - asciiquarium - cmatrix - inputs.neovim.packages.aarch64-linux.default + environment.packages = with pkgs; + [ + neovim + git + fastfetch + asciiquarium + cmatrix + inputs.neovim.packages.aarch64-linux.default - (pkgs.writeShellScriptBin "droid-switch" '' - nix-on-droid switch --flake /data/data/com.termux.nix/files/home/nixos-config - '') - ]; + (pkgs.writeShellScriptBin "droid-switch" '' + nix-on-droid switch --flake /data/data/com.termux.nix/files/home/nixos-config + '') + ] + ++ (import ../../modules/emacs/packages.nix { + inherit pkgs; + emacs = pkgs.emacs; + }) + .packages; home-manager = { config = ./home.nix; useGlobalPkgs = true; diff --git a/nixos/modules/emacs/default.nix b/nixos/modules/emacs/default.nix index 815a894..9a2eb40 100644 --- a/nixos/modules/emacs/default.nix +++ b/nixos/modules/emacs/default.nix @@ -5,53 +5,19 @@ inputs, ... }: let - emacs = pkgs.emacs;#pkgs.emacs-pgtk; + emacs = pkgs.emacs; #pkgs.emacs-pgtk; in { services.emacs.enable = true; services.emacs.startWithGraphical = true; services.emacs.install = true; services.emacs.package = emacs; #pkgs.emacs-unstable - environment.systemPackages = with pkgs; [ - git - libvterm - libtool - emacs - ripgrep - fd - coreutils - clang - cmake - nixfmt-rfc-style - markdownlint-cli - pandoc - gnumake - python3 - isort - pipenv - python313Packages.nose2 - python313Packages.pytest - graphviz - shellcheck - nodejs_23 - - (pkgs.writeShellScriptBin "doom-install" '' - ${pkgs.git}/bin/git clone --depth 1 https://github.com/doomemacs/doomemacs ~/.emacs.d - ${pkgs.git}/bin/git clone https://github.com/KyleKrein/doomemacs.git ~/.doom.d - ~/.emacs.d/bin/doom install - ~/.emacs.d/bin/doom sync - pidof emacs || ${emacs}/bin/emacs --daemon & - '') - (pkgs.writeShellScriptBin "doom-sync" '' - ~/.emacs.d/bin/doom sync --aot --force - '') - (pkgs.writeShellScriptBin "doom-upgrade" '' - ~/.emacs.d/bin/doom upgrade - '') - (pkgs.writeShellScriptBin "doom" '' - ${emacs}/bin/emacsclient -c -a "${emacs}/bin/emacs" - '') - ]; + environment.systemPackages = + (import ./packages.nix { + inherit pkgs; + inherit emacs; + }) + .packages; nixpkgs.overlays = [ inputs.emacs-overlay.overlays.default ]; diff --git a/nixos/modules/emacs/packages.nix b/nixos/modules/emacs/packages.nix new file mode 100644 index 0000000..95570c2 --- /dev/null +++ b/nixos/modules/emacs/packages.nix @@ -0,0 +1,45 @@ +{ + pkgs, + emacs, +}: { + packages = with pkgs; [ + git + libvterm + libtool + emacs + ripgrep + fd + coreutils + clang + cmake + nixfmt-rfc-style + markdownlint-cli + pandoc + gnumake + python3 + isort + pipenv + python313Packages.nose2 + python313Packages.pytest + graphviz + shellcheck + nodejs_23 + + (pkgs.writeShellScriptBin "doom-install" '' + ${pkgs.git}/bin/git clone --depth 1 https://github.com/doomemacs/doomemacs ~/.emacs.d + ${pkgs.git}/bin/git clone https://github.com/KyleKrein/doomemacs.git ~/.doom.d + ~/.emacs.d/bin/doom install + ~/.emacs.d/bin/doom sync + pidof emacs || ${emacs}/bin/emacs --daemon & + '') + (pkgs.writeShellScriptBin "doom-sync" '' + ~/.emacs.d/bin/doom sync --aot --force + '') + (pkgs.writeShellScriptBin "doom-upgrade" '' + ~/.emacs.d/bin/doom upgrade + '') + (pkgs.writeShellScriptBin "doom" '' + ${emacs}/bin/emacsclient -c -a "${emacs}/bin/emacs" + '') + ]; +}