diff --git a/flake.nix b/flake.nix index 15d8e3c..22fd4ce 100644 --- a/flake.nix +++ b/flake.nix @@ -30,10 +30,10 @@ inherit (self) outputs; # Supported systems for your flake packages, shell, etc. systems = [ - # "aarch64-linux" + "aarch64-linux" "x86_64-linux" - # "aarch64-darwin" - # "x86_64-darwin" + "aarch64-darwin" + "x86_64-darwin" ]; # This is a function that generates an attribute by calling a function you # pass to it, with each system as an argument diff --git a/home-manager/home.nix b/home-manager/home.nix index ff5c31f..69f71d8 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -29,8 +29,8 @@ programs.home-manager.enable = true; azos.suites.base.enable = true; - # azos.suites.editor.enable = true; - # azos.suites.dev.enable = true; + azos.suites.editor.enable = true; + azos.suites.dev.enable = true; azos.name = "Aner Zakobar"; # TODO: Set your username @@ -39,17 +39,17 @@ homeDirectory = "/home/aner"; }; - home.packages = with pkgs; [ - # steam - pandoc - offlineimap #emailing - liberation_ttf #fonts - graphviz #graphing - ]; + # home.packages = with pkgs; [ + # # steam + # pandoc + # offlineimap #emailing + # liberation_ttf #fonts + # graphviz #graphing + # ]; # Nicely reload system units when changing configs systemd.user.startServices = "sd-switch"; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion - home.stateVersion = "23.05"; + home.stateVersion = "24.05"; } diff --git a/modules/home-manager/suites/dev/emacs/default.nix b/modules/home-manager/suites/dev/emacs/default.nix index 659e871..e1f40db 100644 --- a/modules/home-manager/suites/dev/emacs/default.nix +++ b/modules/home-manager/suites/dev/emacs/default.nix @@ -10,20 +10,7 @@ in config = lib.mkIf isEnabled { #Base emacs suite definition - azos.emacs.pkgs = [(emacspkgs.trivialBuild (azos-utils.trivialFromOrg { - pname = localPkgName; - version = "0.1.6"; - src = ./el/azos-emacs-dev.org; - packageRequires = with emacspkgs; [ - flycheck - cmake-mode - yaml - nix-mode - python - rust-mode - ein - ]; - }))]; + azos.emacs.pkgs = [pkgs.azos.emacs.dev]; azos.emacs.enabledSuites = [localPkgName]; }; diff --git a/modules/home-manager/suites/editor/emacs/default.nix b/modules/home-manager/suites/editor/emacs/default.nix index f91fa6b..c8a6928 100644 --- a/modules/home-manager/suites/editor/emacs/default.nix +++ b/modules/home-manager/suites/editor/emacs/default.nix @@ -11,15 +11,7 @@ in config = lib.mkIf isEnabled { #Base emacs suite definition - azos.emacs.pkgs = [(emacspkgs.trivialBuild (azos-utils.trivialFromOrg { - pname = localPkgName; - version = "0.1.6"; - src = ./el/azos-emacs-editor.org; - packageRequires = with emacspkgs; [ - graphviz-dot-mode - markdown-mode - ]; - }))]; + azos.emacs.pkgs = [pkgs.azos.emacs.base]; azos.emacs.enabledSuites = [localPkgName]; diff --git a/pkgs/azos-emacs-base.nix b/pkgs/azos-emacs-base.nix index d6cccff..fd27c21 100644 --- a/pkgs/azos-emacs-base.nix +++ b/pkgs/azos-emacs-base.nix @@ -1,6 +1,7 @@ { orgTrivialBuild, - epkgs + epkgs, + pkgs }: orgTrivialBuild { pname = "azos-emacs-base"; diff --git a/pkgs/azos-emacs-dev.nix b/pkgs/azos-emacs-dev.nix new file mode 100644 index 0000000..8c92ba9 --- /dev/null +++ b/pkgs/azos-emacs-dev.nix @@ -0,0 +1,21 @@ +{ + orgTrivialBuild, + epkgs, + pkgs +}: +orgTrivialBuild { + pname = "azos-emacs-dev"; + version = "0.1.6"; + src = ./elisp/azos-emacs-dev.org; + packageRequires = with epkgs; [ + flycheck + cmake-mode + yaml + nix-mode + python + rust-mode + ein + pkgs.azos.emacs.base + pkgs.azos.emacs.editor + ]; +} diff --git a/pkgs/azos-emacs-editor.nix b/pkgs/azos-emacs-editor.nix new file mode 100644 index 0000000..e3127cf --- /dev/null +++ b/pkgs/azos-emacs-editor.nix @@ -0,0 +1,15 @@ +{ + orgTrivialBuild, + epkgs, + pkgs +}: +orgTrivialBuild { + pname = "azos-emacs-editor"; + version = "0.1.6"; + src = ./elisp/azos-emacs-editor.org; + packageRequires = with epkgs; [ + graphviz-dot-mode + markdown-mode + pkgs.azos.emacs.base + ]; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 31e1a43..3e6a83b 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -35,8 +35,10 @@ let esac ''; })); + localEmacsPkg = (src: pkgs.callPackage src { orgTrivialBuild = orgTrivialBuild; epkgs = epkgs; pkgs = pkgs; }); in { - azos.emacs.base = (pkgs.callPackage ./azos-emacs-base.nix - { orgTrivialBuild = orgTrivialBuild; epkgs = epkgs; }); + azos.emacs.base = localEmacsPkg ./azos-emacs-base.nix; + azos.emacs.editor = localEmacsPkg ./azos-emacs-editor.nix; + azos.emacs.dev = localEmacsPkg ./azos-emacs-dev.nix; } diff --git a/modules/home-manager/suites/dev/emacs/el/azos-emacs-dev.org b/pkgs/elisp/azos-emacs-dev.org similarity index 91% rename from modules/home-manager/suites/dev/emacs/el/azos-emacs-dev.org rename to pkgs/elisp/azos-emacs-dev.org index 046ce1f..adc09ea 100644 --- a/modules/home-manager/suites/dev/emacs/el/azos-emacs-dev.org +++ b/pkgs/elisp/azos-emacs-dev.org @@ -95,10 +95,10 @@ Integration with flycheck ;; python-shell-interpreter "python3" python-shell-completion-native-enable nil) -(defun anerenv/python/set-fringes () "Sets fringes for python" +(defun azos/python/set-fringes () "Sets fringes for python" (setq left-fringe-width 10 right-fringe-width 0)) -(add-hook 'python-mode-hook 'anerenv/python/set-fringes) +(add-hook 'python-mode-hook 'azos/python/set-fringes) (use-package elpy :ensure t @@ -106,7 +106,7 @@ Integration with flycheck ;; :init ;; (elpy-enable)) -(define-key anerenv/global-minor-mode/open-keymap +(define-key azos/global-minor-mode/open-keymap (kbd "r p") 'run-python) #+end_src @@ -126,3 +126,9 @@ Integration with flycheck ;; (elpy-mode -1) (define-key ein:notebook-mode-map (kbd "C-c C-k") nil))))) #+end_src + +* Provide + +#+begin_src emacs-lisp +(provide 'azos-emacs-dev) +#+end_src diff --git a/modules/home-manager/suites/editor/emacs/el/azos-emacs-editor.org b/pkgs/elisp/azos-emacs-editor.org similarity index 98% rename from modules/home-manager/suites/editor/emacs/el/azos-emacs-editor.org rename to pkgs/elisp/azos-emacs-editor.org index f87a126..a9ee4e6 100644 --- a/modules/home-manager/suites/editor/emacs/el/azos-emacs-editor.org +++ b/pkgs/elisp/azos-emacs-editor.org @@ -58,7 +58,6 @@ Let's add a TOC (use-package markdown-toc) #+end_src - * ORG ** PDF exporting @@ -174,3 +173,9 @@ Comments: (file-name-sans-extension (buffer-file-name)) (format-time-string "-%Y-%m-%d-%H%M%S") ".docx"))) #+end_src + +* Provide + +#+begin_src emacs-lisp +(provide 'azos-emacs-editor) +#+end_src