aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Kummerlaender2025-12-12 13:11:38 +0100
committerAdrian Kummerlaender2025-12-12 13:11:38 +0100
commit07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495 (patch)
treea8cc3b2b715dbdc73900a1b1b70880684331aa2d
parentef560bb1d546766e64b666b16377c3b06d4c1ce1 (diff)
downloadnixos_home-07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495.tar
nixos_home-07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495.tar.gz
nixos_home-07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495.tar.bz2
nixos_home-07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495.tar.lz
nixos_home-07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495.tar.xz
nixos_home-07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495.tar.zst
nixos_home-07f77a6ba05e5fc4b72ca47a43acc4ed0e2d4495.zip
Update to 25.11, manually pull in deprecated stuff for emacswayland
I do not understand why helm-ag and helm-sweep were removed in MELPA… They work perfectly fine.
-rw-r--r--custom.nix2
-rw-r--r--flake.lock57
-rw-r--r--flake.nix13
-rw-r--r--gui/apps/dev.nix7
-rw-r--r--gui/apps/web.nix2
-rw-r--r--gui/conf/init.el23
-rw-r--r--gui/conf/metakr.org12
-rw-r--r--gui/conf/niri.kdl5
-rw-r--r--gui/emacs.nix40
-rw-r--r--gui/pass.nix2
-rw-r--r--gui/rofi.nix2
-rw-r--r--home.nix13
12 files changed, 132 insertions, 46 deletions
diff --git a/custom.nix b/custom.nix
index fc4d5df..98fe0bb 100644
--- a/custom.nix
+++ b/custom.nix
@@ -10,7 +10,7 @@ in {
type = types.attrsOf (types.submodule {
options = {
description = mkOption {
- type = types.uniq types.string;
+ type = types.uniq types.str;
};
directory = mkOption {
type = types.str;
diff --git a/flake.lock b/flake.lock
index 321aa9f..db4904e 100644
--- a/flake.lock
+++ b/flake.lock
@@ -6,11 +6,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
- "lastModified": 1761470737,
- "narHash": "sha256-ORF+/ByMYBjVid0hD6tAO9XNxFydnIgaz+bQS6Zcscc=",
+ "lastModified": 1765441709,
+ "narHash": "sha256-2LRXe8A779U0m1NTHAaCzNy7WngXFAQw4Gc5vBl33F8=",
"owner": "nix-community",
"repo": "emacs-overlay",
- "rev": "b6fdc07a59460ffd77b076ae910eafdf7106ae5f",
+ "rev": "27ced263ed6b7a6968f9f449d66aa299cb0f14a7",
"type": "github"
},
"original": {
@@ -27,27 +27,27 @@
]
},
"locked": {
- "lastModified": 1758463745,
- "narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=",
+ "lastModified": 1765384171,
+ "narHash": "sha256-FuFtkJrW1Z7u+3lhzPRau69E0CNjADku1mLQQflUORo=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
+ "rev": "44777152652bc9eacf8876976fa72cc77ca8b9d8",
"type": "github"
},
"original": {
"owner": "nix-community",
- "ref": "release-25.05",
+ "ref": "release-25.11",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
- "lastModified": 1761114652,
- "narHash": "sha256-f/QCJM/YhrV/lavyCVz8iU3rlZun6d+dAiC3H+CDle4=",
+ "lastModified": 1765186076,
+ "narHash": "sha256-hM20uyap1a0M9d344I692r+ik4gTMyj60cQWO+hAYP8=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "01f116e4df6a15f4ccdffb1bcd41096869fb385c",
+ "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
"type": "github"
},
"original": {
@@ -59,11 +59,11 @@
},
"nixpkgs-stable": {
"locked": {
- "lastModified": 1761173472,
- "narHash": "sha256-m9W0dYXflzeGgKNravKJvTMR4Qqa2MVD11AwlGMufeE=",
+ "lastModified": 1765363881,
+ "narHash": "sha256-3C3xWn8/2Zzr7sxVBmpc1H1QfxjNfta5IMFe3O9ZEPw=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "c8aa8cc00a5cb57fada0851a038d35c08a36a2bb",
+ "rev": "d2b1213bf5ec5e62d96b003ab4b5cbc42abfc0d0",
"type": "github"
},
"original": {
@@ -89,6 +89,22 @@
"type": "github"
}
},
+ "oldstable": {
+ "locked": {
+ "lastModified": 1765363881,
+ "narHash": "sha256-3C3xWn8/2Zzr7sxVBmpc1H1QfxjNfta5IMFe3O9ZEPw=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "d2b1213bf5ec5e62d96b003ab4b5cbc42abfc0d0",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-25.05",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
"personal": {
"inputs": {
"nixpkgs": "nixpkgs_2"
@@ -111,6 +127,7 @@
"inputs": {
"emacs": "emacs",
"home-manager": "home-manager",
+ "oldstable": "oldstable",
"personal": "personal",
"stable": "stable",
"unstable": "unstable"
@@ -118,27 +135,27 @@
},
"stable": {
"locked": {
- "lastModified": 1761173472,
- "narHash": "sha256-m9W0dYXflzeGgKNravKJvTMR4Qqa2MVD11AwlGMufeE=",
+ "lastModified": 1765311797,
+ "narHash": "sha256-mSD5Ob7a+T2RNjvPvOA1dkJHGVrNVl8ZOrAwBjKBDQo=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "c8aa8cc00a5cb57fada0851a038d35c08a36a2bb",
+ "rev": "09eb77e94fa25202af8f3e81ddc7353d9970ac1b",
"type": "github"
},
"original": {
"owner": "NixOS",
- "ref": "nixos-25.05",
+ "ref": "nixos-25.11",
"repo": "nixpkgs",
"type": "github"
}
},
"unstable": {
"locked": {
- "lastModified": 1761349956,
- "narHash": "sha256-tH3wHnOJms+U4k/rK2Nn1RfBrhffX92jLP/2VndSn0w=",
+ "lastModified": 1765270179,
+ "narHash": "sha256-g2a4MhRKu4ymR4xwo+I+auTknXt/+j37Lnf0Mvfl1rE=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "02f2cb8e0feb4596d20cc52fda73ccee960e3538",
+ "rev": "677fbe97984e7af3175b6c121f3c39ee5c8d62c9",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index 479f8c9..b87429e 100644
--- a/flake.nix
+++ b/flake.nix
@@ -2,18 +2,19 @@
description = "Computing environment of Adrian Kummerlaender";
inputs = {
- stable.url = github:NixOS/nixpkgs/nixos-25.05;
+ stable.url = github:NixOS/nixpkgs/nixos-25.11;
unstable.url = github:NixOS/nixpkgs/nixpkgs-unstable;
+ oldstable.url = github:NixOS/nixpkgs/nixos-25.05;
personal.url = github:KnairdA/pkgs;
home-manager = {
- url = github:nix-community/home-manager/release-25.05;
+ url = github:nix-community/home-manager/release-25.11;
inputs = { nixpkgs.follows = "stable"; };
};
emacs.url = github:nix-community/emacs-overlay/master;
};
outputs = {
- self, stable, unstable, personal, emacs, home-manager, ...
+ self, stable, unstable, oldstable, personal, emacs, home-manager, ...
}: let
system = "x86_64-linux";
@@ -28,6 +29,11 @@
config = { allowUnfree = true; };
};
+ pkgs-oldstable = import oldstable {
+ inherit system;
+ config = { allowUnfree = true; };
+ };
+
pkgs-personal = personal;
config = hostname: home-manager.lib.homeManagerConfiguration {
@@ -35,6 +41,7 @@
extraSpecialArgs = {
inherit pkgs-unstable;
+ inherit pkgs-oldstable;
inherit pkgs-personal;
inherit hostname;
};
diff --git a/gui/apps/dev.nix b/gui/apps/dev.nix
index 5202d3c..55cc56d 100644
--- a/gui/apps/dev.nix
+++ b/gui/apps/dev.nix
@@ -1,4 +1,4 @@
-{ pkgs, pkgs-unstable, ... }:
+{ pkgs, pkgs-unstable, pkgs-oldstable, ... }:
{
home = {
@@ -9,8 +9,9 @@
meld
# Visualization and CAD
- paraview
- pkgs-unstable.blender
+ pkgs-oldstable.paraview
+
+ blender
freecad
meshlab
diff --git a/gui/apps/web.nix b/gui/apps/web.nix
index 3fcb931..53f244b 100644
--- a/gui/apps/web.nix
+++ b/gui/apps/web.nix
@@ -3,7 +3,7 @@
{
home = {
packages = [
- pkgs.tdesktop
+ pkgs.telegram-desktop
pkgs.tigervnc
pkgs.remmina
pkgs.zotero
diff --git a/gui/conf/init.el b/gui/conf/init.el
index af4bd71..b543c6b 100644
--- a/gui/conf/init.el
+++ b/gui/conf/init.el
@@ -492,6 +492,9 @@
:init
(projectile-mode))
+(use-package ag
+ :ensure t)
+
(use-package helm-ag
:ensure t)
@@ -603,6 +606,9 @@
ad-do-it
(message "org-tangle took %f sec" (float-time (time-subtract (current-time) time)))))
+(use-package gptel
+ :ensure t)
+
(let ((mu4e-config "~/.emacs.d/email.el"))
(when (file-exists-p mu4e-config)
(load-file mu4e-config)))
@@ -614,4 +620,21 @@
(use-package envrc
:ensure t)
+(use-package gptel
+ :ensure t
+ :config
+ (defun read-file-contents (file-path)
+ "Read the contents of FILE-PATH and return it as a string."
+ (with-temp-buffer
+ (insert-file-contents file-path)
+ (buffer-string)))
+ (defun gptel-api-key ()
+ (read-file-contents "~/.kit-ai-api"))
+ (setq gptel-backend (gptel-make-openai "KIT-Toolbox"
+ :host "ki-toolbox.scc.kit.edu"
+ :endpoint "/api/v1/chat/completions"
+ :stream t
+ :key #'gptel-api-key
+ :models '("azure.gpt-5"))))
+
(envrc-global-mode)
diff --git a/gui/conf/metakr.org b/gui/conf/metakr.org
index 29643cf..16c9717 100644
--- a/gui/conf/metakr.org
+++ b/gui/conf/metakr.org
@@ -83,8 +83,8 @@ For quick iteration all colors are stored in a table.
| org-tag | #E4E093 |
| org-block-line | #161616 |
| org-block-bg | #080808 |
-| org-agenda-structure-fg | #aaaaaa |
-| org-agenda-structure-bg | #080808 |
+| org-agenda-structure-fg | #000000 |
+| org-agenda-structure-bg | #F2F2F2 |
| org-agenda-today-fg | #dddddd |
| org-agenda-today-bg | #000000 |
| org-special-keyword | #777777 |
@@ -335,9 +335,11 @@ For quick iteration all colors are stored in a table.
:weight normal)
(org-agenda-structure
:foreground @org-agenda-structure-fg
- :background @bg
- :box (:line-width 3 :color @bg)
- :underline @org-agenda-structure-bg)
+ :background @org-agenda-structure-bg)
+ ;(org-agenda-structural-header
+ ; :inherit fixed-pitch
+ ; :weight bold
+ ; :foreground @org-todo)
(org-scheduled
:foreground @org-scheduled)
(org-scheduled-today
diff --git a/gui/conf/niri.kdl b/gui/conf/niri.kdl
index f795bcb..3741a60 100644
--- a/gui/conf/niri.kdl
+++ b/gui/conf/niri.kdl
@@ -13,6 +13,11 @@ output "eDP-1" {
scale 1
}
+output "HDMI-1" {
+ mode "1920x1080"
+ scale 1
+}
+
input {
keyboard {
xkb {
diff --git a/gui/emacs.nix b/gui/emacs.nix
index 8d3e123..d197bce 100644
--- a/gui/emacs.nix
+++ b/gui/emacs.nix
@@ -31,6 +31,7 @@
(add-to-list 'exec-path "${pkgs.universal-ctags}/bin")
(add-to-list 'exec-path "${pkgs.global}/bin")
(add-to-list 'exec-path "${pkgs.pandoc}/bin")
+ (add-to-list 'exec-path "${pkgs.silver-searcher}/bin")
'';
};
@@ -43,28 +44,55 @@
cp ${custom-runtime-env-el} $out/share/emacs/site-lisp/custom-runtime-env.el
'';
};
+
in {
enable = true;
package = pkgs.emacsWithPackagesFromUsePackage {
- override = final: prev: {
- org = prev.org.overrideAttrs(old: { patches = []; } );
- };
-
package = pkgs.emacs-unstable-pgtk;
config = ./conf/init.el;
alwaysEnsure = false;
- extraEmacsPackages = epkgs: (with epkgs.melpaPackages; [
+ override = final: prev: prev // {
+ org = prev.org.overrideAttrs(old: { patches = []; } );
+
+ helm-ag = prev.trivialBuild {
+ pname = "helm-ag";
+ version = "0.64";
+ src = pkgs.fetchFromGitHub {
+ owner = "emacsattic";
+ repo = "helm-ag";
+ rev = "a7b43d9622ea5dcff3e3e0bb0b7dcc342b272171";
+ hash = "sha256-bIuZPMsY0iwkUFOfB6rGno0WvlPtbqqgujwhUb6nTLw=";
+ };
+ buildInputs = [ prev.melpaPackages.helm ];
+ };
+
+ helm-swoop = prev.trivialBuild {
+ pname = "helm-swoop";
+ version = "1.7.4";
+ src = pkgs.fetchFromGitHub {
+ owner = "emacsattic";
+ repo = "helm-swoop";
+ rev = "df90efd4476dec61186d80cace69276a95b834d2";
+ hash = "sha256-T93IoHTRkBrX9J//WPbS3zEEjKFqNzBsYrHaKM5U2QY=";
+ };
+ buildInputs = [ prev.melpaPackages.helm ];
+ };
+ };
+
+ extraEmacsPackages = epkgs:
+ (with epkgs.melpaPackages; [
pdf-tools
mu4e-alert
]) ++ (with epkgs.elpaPackages; [
auctex
]) ++ (with epkgs.nongnuPackages; [
org-contrib
+ ]) ++ (with epkgs; [
+ mu4e
])++ [
- epkgs.mu4e
akr-color-theme
custom-runtime-env
];
diff --git a/gui/pass.nix b/gui/pass.nix
index b400292..00e66df 100644
--- a/gui/pass.nix
+++ b/gui/pass.nix
@@ -8,7 +8,7 @@ let
text = ''
#!/usr/bin/env bash
- ${pkgs.rofi-wayland}/bin/rofi -dmenu -p "pass" "$@"
+ ${pkgs.rofi}/bin/rofi -dmenu -p "pass" "$@"
'';
};
diff --git a/gui/rofi.nix b/gui/rofi.nix
index 6df45ff..8155f1d 100644
--- a/gui/rofi.nix
+++ b/gui/rofi.nix
@@ -3,7 +3,7 @@
{
programs.rofi = {
enable = true;
- package = pkgs.rofi-wayland;
+ package = pkgs.rofi;
location = "top";
font = "Iosevka 12";
diff --git a/home.nix b/home.nix
index 2e068c4..c2377fb 100644
--- a/home.nix
+++ b/home.nix
@@ -29,14 +29,15 @@
programs.git = {
enable = true;
- package = pkgs.gitAndTools.gitFull;
+ package = pkgs.gitFull;
lfs.enable = true;
- difftastic.enable = true;
- userName = "Adrian Kummerlaender";
- userEmail = "adrian@kummerlaender.eu";
+ settings.user = {
+ name = "Adrian Kummerlaender";
+ email = "adrian@kummerlaender.eu";
+ };
- extraConfig = {
+ settings = {
core.editor = "vim";
merge.tool = "${pkgs.meld}/bin/meld";
pull.ff = "only";
@@ -45,6 +46,8 @@
};
};
+ programs.difftastic.enable = true;
+
programs.ssh = {
enable = true;
matchBlocks = {