mirror of
https://github.com/ellmau/nixos.git
synced 2025-12-19 09:29:36 +01:00
* XMonad base config
* Polybar
* development environment for emacs
* flake bump
Flake lock file updates:
• Added input 'flake-utils':
'github:numtide/flake-utils/cfacdce06f30d2b68473a46042957675eebb3401' (2023-04-11)
• Added input 'flake-utils/systems':
'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Added input 'flake-utils-plus':
'github:gytis-ivaskevicius/flake-utils-plus/2bf0f91643c2e5ae38c1b26893ac2927ac9bd82a' (2022-07-07)
• Added input 'flake-utils-plus/flake-utils':
'github:numtide/flake-utils/3cecb5b042f7f209c56ffd8371b2711a290ec797' (2022-02-07)
• Added input 'nixpkgs':
'github:NixOS/nixpkgs/7629f9b0680d87c7775f3261bee746da5dac76d1' (2023-05-08)
• Added input 'nixpkgs-unstable':
'github:NixOS/nixpkgs/897876e4c484f1e8f92009fd11b7d988a121a4e7' (2023-05-06)
119 lines
3.1 KiB
Nix
119 lines
3.1 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
with lib; let
|
|
defaultEl = ./default.el;
|
|
environment.systemPackages = [pkgs.gdb]; # use gdb for dap-mode
|
|
localsettings = pkgs.writeText "local-settings.el" ''
|
|
(defconst elss/paths/cpptools "${pkgs.unstable.vscode-extensions.ms-vscode.cpptools}/share/vscode/extensions/ms-vscode.cpptools")
|
|
(defconst elss/paths/cpptools-program "${pkgs.unstable.vscode-extensions.ms-vscode.cpptools}/share/vscode/extensions/ms-vscode.cpptools/debugAdapters/bin/OpenDebugAD7")
|
|
(provide 'local-settings)
|
|
'';
|
|
|
|
defaultConfig = pkgs.runCommand "default.el" {} ''
|
|
mkdir -p $out/share/emacs/site-lisp
|
|
cp ${defaultEl} $out/share/emacs/site-lisp/default.el
|
|
cp ${localsettings} $out/share/emacs/site-lisp/local-settings.el
|
|
'';
|
|
emacsPackage = (pkgs.emacsPackagesFor pkgs.emacs).emacsWithPackages (epkgs: let
|
|
lpkgs = import ./packages.nix {inherit config lib pkgs epkgs;};
|
|
#[ (defaultConfig lpkgs) ] ++ (with pkgs; [
|
|
# aspell
|
|
# emacs-all-the-icons-fonts
|
|
# gnupg
|
|
# nixpkgs-fmt
|
|
#])
|
|
in
|
|
[defaultConfig]
|
|
++ [(with epkgs.elpaPackages; [auctex org flymake])]
|
|
++ (with epkgs.melpaStablePackages; [])
|
|
++ (with epkgs.melpaPackages;
|
|
[
|
|
ac-helm
|
|
academic-phrases
|
|
add-hooks
|
|
alert
|
|
all-the-icons
|
|
all-the-icons-dired
|
|
apheleia
|
|
beacon
|
|
bln-mode
|
|
cargo-mode
|
|
company
|
|
company-auctex
|
|
company-bibtex
|
|
company-flx
|
|
company-quickhelp
|
|
company-reftex
|
|
cov
|
|
dap-mode
|
|
diminish
|
|
direnv
|
|
dockerfile-mode
|
|
docker-compose-mode
|
|
flycheck
|
|
free-keys
|
|
haskell-mode
|
|
highlight-indentation
|
|
helm
|
|
#helm-bbdb
|
|
helm-company
|
|
helm-flx
|
|
helm-descbinds
|
|
helm-lsp
|
|
helm-projectile
|
|
helm-rg
|
|
json-mode
|
|
less-css-mode
|
|
lsp-haskell
|
|
lsp-mode
|
|
lsp-ui
|
|
magit
|
|
markdown-mode
|
|
moe-theme
|
|
multiple-cursors
|
|
nix-mode
|
|
nixpkgs-fmt
|
|
org-bullets
|
|
org-roam
|
|
#org-roam-server
|
|
pasp-mode
|
|
pdf-tools
|
|
projectile
|
|
projectile-ripgrep
|
|
rustic
|
|
spacemacs-theme
|
|
solarized-theme
|
|
sparql-mode
|
|
sudo-edit
|
|
use-package
|
|
#vscode-dark-plus-theme
|
|
yaml-mode
|
|
yasnippet
|
|
#zenburn-theme
|
|
]
|
|
++ (with lpkgs; [org-roam-ui ligatures])));
|
|
in {
|
|
options.elss.programs.emacs.enable =
|
|
mkEnableOption "Setup emacs package and install it";
|
|
config = mkIf config.elss.programs.emacs.enable {
|
|
services.emacs = {
|
|
enable = true;
|
|
defaultEditor = true;
|
|
package = emacsPackage;
|
|
};
|
|
};
|
|
#nixpkgs.overlays = [ (self: super: { emacsOrig = super.emacs; }) (import (builtins.fetchTarball {
|
|
# url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz;
|
|
#})) ];
|
|
|
|
#nixpkgs.overlays = [
|
|
# (import (builtins.fetchTarball {
|
|
# url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz;
|
|
# }))
|
|
#];
|
|
}
|