summaryrefslogtreecommitdiff
path: root/programs.nix
diff options
context:
space:
mode:
authorHenry Webster <hwebs@hwebs.info>2026-07-26 13:20:44 -0500
committerHenry Webster <hwebs@hwebs.info>2026-07-26 13:20:44 -0500
commitd47d76336a9680b661220d23c5d429d90a2f3f9e (patch)
tree741291864d3349dbcbe00346974a747a350924bc /programs.nix
parentf10624e907621458407be98a567918afe77d59b6 (diff)
move more files out of configuration.nix
Diffstat (limited to 'programs.nix')
-rw-r--r--programs.nix72
1 files changed, 66 insertions, 6 deletions
diff --git a/programs.nix b/programs.nix
index 73839a6..2872cb4 100644
--- a/programs.nix
+++ b/programs.nix
@@ -1,10 +1,33 @@
{ pkgs, ... }:
+
+let
+ # open the MusicBrainz submission URL for the disc in the drive
+ discid = pkgs.writeShellApplication {
+ name = "discid";
+ runtimeInputs = [
+ pkgs.discidurl
+ pkgs.xdg-utils
+ ];
+ text = "discidurl | xargs -r xdg-open";
+ };
+in
{
environment.systemPackages = with pkgs; [
- itch
+ discidurl
+ discid
+ itch
haunt
+ # --- wayland
+ mako
+
+ # provides notify-send
+ libnotify
+
+ # website is down :(
+ # makemkv
+
(aspellWithDicts (
dicts: with dicts; [
en
@@ -12,6 +35,21 @@
en-science
]
))
+
+ pi-coding-agent
+
+ (buildNpmPackage rec {
+ pname = "pi-acp";
+ version = "0.0.31";
+ src = fetchFromGitHub {
+ owner = "svkozak";
+ repo = "pi-acp";
+ rev = "v${version}";
+ hash = "sha256-bM3V/3fxkY2Ib+OyfT82StIIRSLXGDuYUbt1CZKpTuo=";
+ };
+ npmDepsHash = "sha256-qN+b/tMbnJLkWjotl3XrA0nfZ3KT/mT6gM+n3Qiz8Wk=";
+ })
+
];
programs = {
@@ -24,11 +62,33 @@
};
};
- services.emacs = {
- enable = true;
- package = pkgs.emacs.pkgs.withPackages (epkgs: [
- (epkgs.treesit-grammars.with-grammars (g: [ g.tree-sitter-nix ]))
- ]);
+ services = {
+ emacs = {
+ enable = true;
+ package =
+ let
+ emacs = pkgs.emacs-pgtk.overrideAttrs (old: {
+ postInstall = (old.postInstall or "") + ''
+ # I only want the client version
+ rm -f $out/share/applications/emacs.desktop
+ '';
+ });
+ in
+ (pkgs.emacsPackagesFor emacs).withPackages (epkgs: [
+ (epkgs.treesit-grammars.with-grammars (g: [ g.tree-sitter-nix ]))
+ epkgs.vterm
+ ]);
+ };
+
+ ollama = {
+ enable = true;
+ package = pkgs.ollama-rocm;
+ environmentVariables = {
+ HIP_VISIBLE_DEVICES = "0";
+ OLLAMA_CONTEXT_LENGTH = "32768";
+ OLLAMA_KV_CACHE_TYPE = "q8_0";
+ };
+ };
};
services.immich = {