2023-05-15 10:48:22 -04:00
|
|
|
{ config, pkgs, nixpkgs, ... }:
|
2022-01-11 20:43:40 -05:00
|
|
|
let
|
|
|
|
# nix-direnv with flake support
|
|
|
|
nix-direnv-with-flakes = pkgs.nix-direnv.override { enableFlakes = true; };
|
2023-05-15 10:48:22 -04:00
|
|
|
|
|
|
|
emacs29 = pkgs.callPackage (import "${nixpkgs}/pkgs/applications/editors/emacs/generic.nix" {
|
|
|
|
version = "29.0.90";
|
|
|
|
sha256 = "sha256-5aR+9EZF9Md2nb4n3xktFR5j8cZto7mZaYUXZpQbvNI=";
|
|
|
|
}) {
|
|
|
|
withPgtk = true;
|
|
|
|
withWebP = true;
|
|
|
|
withSQLite3 = true;
|
|
|
|
|
|
|
|
# Copied from nixpkgs
|
|
|
|
libXaw = pkgs.xorg.libXaw;
|
|
|
|
gconf = null;
|
|
|
|
alsa-lib = null;
|
|
|
|
acl = null;
|
|
|
|
gpm = null;
|
|
|
|
inherit (pkgs.darwin.apple_sdk.frameworks)
|
|
|
|
AppKit Carbon Cocoa IOKit OSAKit Quartz QuartzCore WebKit
|
|
|
|
ImageCaptureCore GSS ImageIO;
|
|
|
|
inherit (pkgs.darwin) sigtool;
|
|
|
|
};
|
2022-01-11 20:43:40 -05:00
|
|
|
in {
|
2022-01-06 21:14:02 -05:00
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
ffmpeg
|
|
|
|
jq
|
|
|
|
git
|
|
|
|
wget
|
|
|
|
libnotify
|
|
|
|
ripgrep
|
|
|
|
unzip
|
|
|
|
tldr
|
|
|
|
pamixer
|
2022-03-01 18:40:48 -05:00
|
|
|
brightnessctl
|
2022-01-06 22:47:39 -05:00
|
|
|
playerctl
|
2022-01-06 21:14:02 -05:00
|
|
|
|
2022-10-21 09:19:25 -04:00
|
|
|
pandoc
|
|
|
|
gnuplot
|
|
|
|
graphviz
|
2022-10-26 15:54:00 -04:00
|
|
|
(aspellWithDicts (ps: with ps; [ en en-computers en-science ]))
|
2022-01-06 21:14:02 -05:00
|
|
|
|
2022-10-21 09:19:25 -04:00
|
|
|
gcc
|
2022-01-11 20:43:40 -05:00
|
|
|
|
|
|
|
direnv
|
|
|
|
nix-direnv-with-flakes
|
2022-01-06 21:14:02 -05:00
|
|
|
];
|
|
|
|
|
2023-05-15 10:47:52 -04:00
|
|
|
programs.fish.enable = true;
|
2022-01-06 21:14:02 -05:00
|
|
|
programs.sway.enable = true;
|
|
|
|
programs.sway.extraPackages = [];
|
2022-01-11 20:43:40 -05:00
|
|
|
|
|
|
|
# Necessary for VSCodium to store passwords
|
|
|
|
services.gnome.gnome-keyring.enable = true;
|
|
|
|
|
|
|
|
|
2022-05-29 19:15:50 -04:00
|
|
|
services.emacs.enable = true;
|
2023-05-15 10:48:22 -04:00
|
|
|
services.emacs.package = emacs29;
|
2022-05-29 19:15:50 -04:00
|
|
|
|
2022-01-11 20:43:40 -05:00
|
|
|
# direnv setup
|
|
|
|
|
|
|
|
nix.extraOptions = ''
|
|
|
|
keep-derivations = true
|
|
|
|
keep-outputs = true
|
|
|
|
'';
|
|
|
|
|
|
|
|
environment.pathsToLink = [ "/share/nix-direnv" ];
|
2022-01-06 21:14:02 -05:00
|
|
|
}
|