423 lines
9 KiB
Nix
423 lines
9 KiB
Nix
{ nix-flatpak, lib, pkgs, inputs, ... }:
|
|
{
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
home = {
|
|
packages = with pkgs; [
|
|
just
|
|
yt-dlp
|
|
erdtree
|
|
age
|
|
figlet
|
|
ffmpeg
|
|
rlwrap
|
|
pinentry
|
|
gcr
|
|
gnutar
|
|
unzip
|
|
zip
|
|
htop
|
|
#owl
|
|
#opendrop
|
|
dconf
|
|
gnupg
|
|
gcc
|
|
gnutls
|
|
gettext
|
|
xorg.libX11
|
|
freetype.dev
|
|
gnumake
|
|
flex
|
|
bison
|
|
mesa
|
|
neofetch
|
|
nitch
|
|
ripgrep-all
|
|
silver-searcher
|
|
xclip
|
|
maestral
|
|
maestral-gui
|
|
sane-airscan
|
|
xsane
|
|
dbus
|
|
gst_all_1.gstreamer
|
|
alsa-oss
|
|
fontconfig
|
|
powertop
|
|
usbutils
|
|
pciutils
|
|
util-linux
|
|
coreutils
|
|
binutils
|
|
libgcc
|
|
raylib
|
|
SDL2.dev
|
|
protonplus
|
|
ispell
|
|
aspell
|
|
aspellDicts.en
|
|
aspellDicts.en-computers
|
|
texlive.combined.scheme-full
|
|
appimage-run
|
|
#transmission_4
|
|
#transmission_4-gtk
|
|
|
|
ruby
|
|
janet
|
|
jpm
|
|
python3
|
|
python311Packages.pip
|
|
sbcl
|
|
nodejs_18
|
|
platformio-core
|
|
kanata-with-cmd
|
|
icloudpd
|
|
libheif
|
|
libheif.out
|
|
|
|
# node packages
|
|
nodePackages.typescript-language-server
|
|
nodePackages.vscode-langservers-extracted
|
|
|
|
nodePackages.prettier
|
|
nodePackages.javascript-typescript-langserver
|
|
|
|
nodePackages.stylelint
|
|
nodePackages.svelte-language-server
|
|
nodePackages.typescript
|
|
|
|
|
|
nixd
|
|
|
|
fishPlugins.foreign-env
|
|
fishPlugins.z
|
|
fishPlugins.fzf
|
|
fishPlugins.bass
|
|
fishPlugins.autopair
|
|
|
|
via
|
|
bitwarden-cli
|
|
bitwarden-desktop
|
|
rbw
|
|
tailscale
|
|
protonplus
|
|
font-manager
|
|
gnomeExtensions.just-perfection
|
|
gnomeExtensions.dash-to-dock
|
|
gnomeExtensions.solaar-extension
|
|
gnome-software
|
|
gnome-tweaks
|
|
gnome-photos
|
|
colloid-gtk-theme
|
|
colloid-icon-theme
|
|
whitesur-gtk-theme
|
|
whitesur-cursors
|
|
whitesur-icon-theme
|
|
graphite-gtk-theme
|
|
graphite-cursors
|
|
|
|
papers
|
|
newsflash
|
|
planify
|
|
|
|
wineWowPackages.stagingFull
|
|
wineWowPackages.fonts
|
|
winetricks
|
|
|
|
spice
|
|
spice-gtk
|
|
spice-protocol
|
|
virt-viewer
|
|
virt-manager
|
|
solaar
|
|
logitech-udev-rules
|
|
|
|
syncthingtray
|
|
impression
|
|
zoom-us
|
|
nyxt
|
|
ungoogled-chromium
|
|
obsidian
|
|
vlc
|
|
polychromatic
|
|
discord
|
|
slack
|
|
signal-desktop
|
|
libreoffice
|
|
plexamp
|
|
carla
|
|
wireplumber
|
|
audacity
|
|
supercollider-with-plugins
|
|
bitwig-studio
|
|
blender
|
|
davinci-resolve-studio
|
|
steam
|
|
zotero_7
|
|
handbrake
|
|
renoise
|
|
yabridge
|
|
yabridgectl
|
|
ansel
|
|
rawtherapee
|
|
inkscape
|
|
gimp
|
|
epson-escpr
|
|
kicad
|
|
openscad-unstable
|
|
openscad-lsp
|
|
picard
|
|
evolutionWithPlugins
|
|
mpv
|
|
plugdata
|
|
pavucontrol
|
|
qpwgraph
|
|
alsa-utils
|
|
clapper
|
|
amberol
|
|
|
|
parinfer-rust-emacs
|
|
|
|
# Audio plugins (LV2, VST2, VST3, LADSPA)
|
|
distrho
|
|
eq10q
|
|
lsp-plugins
|
|
x42-plugins
|
|
x42-gmsynth
|
|
dragonfly-reverb
|
|
FIL-plugins
|
|
geonkick
|
|
bespokesynth
|
|
|
|
# Fonts
|
|
fira-code
|
|
fira
|
|
cooper-hewitt
|
|
ibm-plex
|
|
jetbrains-mono
|
|
iosevka
|
|
# bitmap
|
|
spleen
|
|
fira-code-symbols
|
|
powerline-fonts
|
|
nerdfonts
|
|
];
|
|
|
|
username = "emenel";
|
|
homeDirectory = "/home/emenel";
|
|
|
|
sessionPath = [ "/home/emenel/.config/emacs/bin" "/home/emenel/.npm-packages/bin" "/home/emenel/Applications" ];
|
|
|
|
sessionVariables = {
|
|
EDITOR = "emacsclient -r";
|
|
WINEFSYNC = 1;
|
|
};
|
|
|
|
stateVersion = "24.05";
|
|
};
|
|
|
|
fonts.fontconfig.enable = true;
|
|
|
|
programs = {
|
|
home-manager.enable = true;
|
|
direnv = {
|
|
enable = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
fish = {
|
|
enable = true;
|
|
shellAliases = {
|
|
"ls" = "eza";
|
|
};
|
|
};
|
|
starship = {
|
|
enable = true;
|
|
enableFishIntegration = true;
|
|
};
|
|
mu.enable = true;
|
|
mbsync.enable = true;
|
|
msmtp.enable = true;
|
|
emacs = {
|
|
enable = true;
|
|
package = pkgs.emacs;
|
|
extraPackages = epkgs: [
|
|
epkgs.mu4e
|
|
epkgs.vterm
|
|
];
|
|
};
|
|
ripgrep = {
|
|
enable = true;
|
|
};
|
|
thefuck = {
|
|
enable = true;
|
|
enableFishIntegration = true;
|
|
};
|
|
wezterm = {
|
|
enable = true;
|
|
};
|
|
bat = {
|
|
enable = true;
|
|
};
|
|
# borgmatic = {
|
|
# enable = true;
|
|
# };
|
|
eza = {
|
|
enable = true;
|
|
enableFishIntegration = true;
|
|
};
|
|
fd = {
|
|
enable = true;
|
|
};
|
|
fzf = {
|
|
enable = true;
|
|
enableFishIntegration = true;
|
|
};
|
|
git = {
|
|
enable = true;
|
|
lfs.enable = true;
|
|
};
|
|
htop.enable = true;
|
|
nnn = {
|
|
enable = true;
|
|
};
|
|
pandoc.enable = true;
|
|
password-store.enable = true;
|
|
#waybar.enable = true;
|
|
lazygit.enable = true;
|
|
jq.enable = true;
|
|
};
|
|
|
|
wayland.windowManager.hyprland = {
|
|
enable = true; # enable Hyprland
|
|
xwayland.enable = true;
|
|
#systemd.variables = ["--all"];
|
|
|
|
settings = {
|
|
"$mod" = "SUPER";
|
|
# bind =
|
|
# [
|
|
# "$mod, F, exec, firefox"
|
|
# ", Print, exec, grimblast copy area"
|
|
# ]
|
|
# ++ (
|
|
# # workspaces
|
|
# # binds $mod + [shift +] {1..9} to [move to] workspace {1..9}
|
|
# builtins.concatLists (builtins.genList (i:
|
|
# let ws = i + 1;
|
|
# in [
|
|
# "$mod, code:1${toString i}, workspace, ${toString ws}"
|
|
# "$mod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}"
|
|
# ]
|
|
# )
|
|
# 9)
|
|
# );
|
|
};
|
|
};
|
|
home.sessionVariables.NIXOS_OZONE_WL = "1";
|
|
|
|
dconf.settings = {
|
|
"org/gnome/desktop/background" = {
|
|
picture-options = "none";
|
|
primary-color = "#222222";
|
|
};
|
|
|
|
"org/gnome/shell/keybindings" = {
|
|
shift-overview-up = ["disabled"];
|
|
shift-overview-down = ["disabled"];
|
|
switch-to-application-1 = ["disabled"];
|
|
switch-to-application-2 = ["disabled"];
|
|
switch-to-application-3 = ["disabled"];
|
|
switch-to-application-4 = ["disabled"];
|
|
switch-to-application-5 = ["disabled"];
|
|
switch-to-application-6 = ["disabled"];
|
|
switch-to-application-7 = ["disabled"];
|
|
switch-to-application-8 = ["disabled"];
|
|
switch-to-application-9 = ["disabled"];
|
|
switch-to-application-10 = ["disabled"];
|
|
};
|
|
};
|
|
|
|
nixpkgs.config.packageOverrides = pkgs: {
|
|
renoise = pkgs.renoise.override {
|
|
releasePath = /home/emenel/temp/rns_344_linux_x86_64.tar.gz;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
flatpak.enable = true;
|
|
syncthing = {
|
|
enable = true;
|
|
tray.enable = true;
|
|
};
|
|
};
|
|
|
|
xdg.systemDirs.data = [
|
|
"/home/emenel/.local/share/applications/wine/Programs"
|
|
"/home/emenel/.local/share/applications"
|
|
"/var/lib/flatpak/exports/share"
|
|
"/home/emenel/.local/share/flatpak/exports/share"
|
|
"/home/emenel/.nix-profile/share/applications"
|
|
];
|
|
|
|
services.flatpak.packages = [
|
|
"io.github.zen_browser.zen"
|
|
"com.github.johnfactotum.QuickLookup"
|
|
"com.heroicgameslauncher.hgl"
|
|
"io.github.dyegoaurelio.simple-wireplumber-gui"
|
|
"io.github.dgsasha.Remembrance"
|
|
];
|
|
|
|
home.file.".npmrc".source = ../dotfiles/dot_npmrc;
|
|
xdg.configFile."kmonad".source = ../dotfiles/dot_config/kmonad;
|
|
xdg.configFile."just".source = ../dotfiles/dot_config/just/justfile;
|
|
xdg.configFile."starship.toml".source = ../dotfiles/dot_config/starship.toml;
|
|
xdg.configFile."wezterm".source = ../dotfiles/dot_config/wezterm;
|
|
xdg.configFile."git".source = ../dotfiles/dot_config/git;
|
|
home.file.".sbclrc".source = ../dotfiles/dot_sbclrc;
|
|
home.file.".signature".source = ../dotfiles/dot_signature;
|
|
|
|
home.file.".config/fish/functions" = {
|
|
source = ../dotfiles/dot_config/fish/functions;
|
|
recursive = true;
|
|
};
|
|
|
|
xdg.configFile."emacs".enable = false;
|
|
home.file.".msmtprc".source = ../dotfiles/dot_msmtprc;
|
|
home.file.".mbsyncrc".source = ../dotfiles/dot_mbsyncrc;
|
|
|
|
home.file.".local/share/flf".source = ../dotfiles/dot_local/share/flf;
|
|
|
|
############ ACCOUNTS
|
|
|
|
# accounts.calendar = {
|
|
# basePath = ".calendars";
|
|
# accounts = {
|
|
# emenel = {
|
|
# primaryCollection = "Primary";
|
|
# name = "matt@emenel.ca";
|
|
# primary = true;
|
|
# remote = {
|
|
# passwordCommand = [ "rbw" "get" "nixos-fastmail" ];
|
|
# type = "caldav";
|
|
# url = "https://caldav.fastmail.com";
|
|
# userName = "matt@emenel.ca";
|
|
# };
|
|
# local = {
|
|
# fileExt = ".ics";
|
|
# type = "filesystem";
|
|
# };
|
|
# vdirsyncer = {
|
|
# enable = true;
|
|
# collections = [ "87220838-CCD7-11ED-AB3D-F5DBFBDED781" ];
|
|
# itemTypes = ["VEVENT"];
|
|
# metadata = ["displayname" "color"];
|
|
# };
|
|
# khal.enable = true;
|
|
# khal.color = "dark cyan";
|
|
# khal.type = "discover";
|
|
# khal.addresses = [ "matt@emenel.ca" ];
|
|
# };
|
|
# };
|
|
# };
|
|
}
|