refactor out common packages
This commit is contained in:
parent
eb281e7443
commit
ed5b2071c5
6 changed files with 240 additions and 604 deletions
|
@ -102,9 +102,7 @@
|
||||||
}
|
}
|
||||||
nixos-cosmic.nixosModules.default
|
nixos-cosmic.nixosModules.default
|
||||||
];
|
];
|
||||||
specialArgs = {
|
specialArgs = inputs;
|
||||||
inherit inputs;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
darwinConfigurations = {
|
darwinConfigurations = {
|
||||||
|
|
|
@ -276,9 +276,6 @@
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
firefox
|
firefox
|
||||||
vim
|
vim
|
||||||
lua-language-server
|
|
||||||
texlive.combined.scheme-full
|
|
||||||
steam-run
|
|
||||||
# thunderbird
|
# thunderbird
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
@ -299,37 +296,8 @@
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Allow unfree packages
|
|
||||||
# List packages installed in system profile. To search, run:
|
|
||||||
# $ nix search wget
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
distrobox
|
vim
|
||||||
fish
|
|
||||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
|
||||||
wget
|
|
||||||
git
|
|
||||||
unzip
|
|
||||||
ripgrep
|
|
||||||
clang
|
|
||||||
fd
|
|
||||||
cargo
|
|
||||||
python3
|
|
||||||
python311Packages.pynvim
|
|
||||||
python311Packages.pip
|
|
||||||
steam
|
|
||||||
ruby
|
|
||||||
julia
|
|
||||||
xclip
|
|
||||||
nodePackages.npm
|
|
||||||
go
|
|
||||||
tailscale
|
|
||||||
ethtool
|
|
||||||
grub2
|
|
||||||
|
|
||||||
xdg-desktop-portal-gtk
|
|
||||||
|
|
||||||
wineWowPackages.waylandFull
|
|
||||||
wineWowPackages.stable
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
|
|
@ -2,380 +2,46 @@
|
||||||
inputs,
|
inputs,
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
lib,
|
||||||
zls,
|
zls,
|
||||||
nix-options-search,
|
nix-options-search,
|
||||||
...
|
...
|
||||||
}: {
|
}: let
|
||||||
# wayland.windowManager.hyprland = {
|
shared-programs = import ../shared/home-programs.nix {inherit config pkgs lib;};
|
||||||
# enable = true;
|
in {
|
||||||
# # ...
|
home = {
|
||||||
# plugins = [
|
username = "nmarks";
|
||||||
# inputs.hyprland-plugins.packages.${pkgs.system}.hyprbars
|
homeDirectory = "/home/nmarks";
|
||||||
# # ...
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
|
|
||||||
# Home Manager needs a bit of information about you and the paths it should
|
# This value determines the Home Manager release that your configuration is
|
||||||
# manage.
|
# compatible with. This helps avoid breakage when a new Home Manager release
|
||||||
home.username = "nmarks";
|
# introduces backwards incompatible changes.
|
||||||
home.homeDirectory = "/home/nmarks";
|
#
|
||||||
|
# You should not change this value, even if you update Home Manager. If you do
|
||||||
|
# want to update the value, then make sure to first check the Home Manager
|
||||||
|
# release notes.
|
||||||
|
stateVersion = "23.05"; # Please read the comment before changing.
|
||||||
|
|
||||||
# This value determines the Home Manager release that your configuration is
|
packages = with pkgs; let
|
||||||
# compatible with. This helps avoid breakage when a new Home Manager release
|
shared-packages = import ../shared/packages.nix {inherit pkgs;};
|
||||||
# introduces backwards incompatible changes.
|
in
|
||||||
#
|
shared-packages
|
||||||
# You should not change this value, even if you update Home Manager. If you do
|
++ [
|
||||||
# want to update the value, then make sure to first check the Home Manager
|
zls.packages.x86_64-linux.zls
|
||||||
# release notes.
|
rust-bin.stable.latest.default
|
||||||
home.stateVersion = "23.05"; # Please read the comment before changing.
|
];
|
||||||
|
# programs.mangohud.enable = true;
|
||||||
|
|
||||||
# imports = [
|
sessionVariables = {
|
||||||
# ./zed-editor.nix
|
EDITOR = "nvim";
|
||||||
# ];
|
VISUAL = "nvim";
|
||||||
|
TERMINAL = "ghostty";
|
||||||
# imports = [discord/default.nix];
|
BROWSER = "firefox";
|
||||||
# sys.discord.enable = true;
|
};
|
||||||
|
|
||||||
# The home.packages option allows you to install Nix packages into your
|
|
||||||
# environment.
|
|
||||||
|
|
||||||
home.packages = with pkgs;
|
|
||||||
[
|
|
||||||
glance
|
|
||||||
rust-bin.stable.latest.default
|
|
||||||
just
|
|
||||||
libxkbcommon
|
|
||||||
imagemagick
|
|
||||||
lua51Packages.lua
|
|
||||||
lua51Packages.luarocks-nix
|
|
||||||
legcord
|
|
||||||
calibre
|
|
||||||
pyright
|
|
||||||
ruff
|
|
||||||
python312Packages.jedi-language-server
|
|
||||||
wofi
|
|
||||||
bottles
|
|
||||||
kdePackages.dolphin
|
|
||||||
path-of-building
|
|
||||||
tor
|
|
||||||
spotify
|
|
||||||
stremio
|
|
||||||
codespell
|
|
||||||
fzf
|
|
||||||
pavucontrol
|
|
||||||
efibootmgr
|
|
||||||
zigpkgs.master
|
|
||||||
ghostty
|
|
||||||
stylua
|
|
||||||
webcord
|
|
||||||
cachix
|
|
||||||
(btop.override {cudaSupport = true;})
|
|
||||||
neofetch
|
|
||||||
direnv
|
|
||||||
R
|
|
||||||
typst
|
|
||||||
typst-live
|
|
||||||
tmux
|
|
||||||
zellij
|
|
||||||
distrobox
|
|
||||||
podman
|
|
||||||
qemu
|
|
||||||
vimgolf
|
|
||||||
lazygit
|
|
||||||
file
|
|
||||||
vesktop
|
|
||||||
(discord.override {
|
|
||||||
withMoonlight = true;
|
|
||||||
})
|
|
||||||
# itch : THIS IS BROKEN FOR SOME REASON, need to pin it??
|
|
||||||
qbittorrent
|
|
||||||
deno
|
|
||||||
imagemagick
|
|
||||||
pkg-config
|
|
||||||
mpv
|
|
||||||
comma
|
|
||||||
openconnect
|
|
||||||
gnumake
|
|
||||||
signal-desktop
|
|
||||||
zed-editor
|
|
||||||
#getting foundry to work!
|
|
||||||
#nodejs_21
|
|
||||||
caddy
|
|
||||||
cloudflared
|
|
||||||
pm2
|
|
||||||
#productivty
|
|
||||||
#Gaming
|
|
||||||
lutris
|
|
||||||
wineWowPackages.stable
|
|
||||||
winetricks
|
|
||||||
dxvk_2
|
|
||||||
mangohud
|
|
||||||
vulkan-tools
|
|
||||||
prismlauncher
|
|
||||||
# for cmpm17
|
|
||||||
exiftool
|
|
||||||
#for fun
|
|
||||||
cowsay
|
|
||||||
cmatrix
|
|
||||||
hyfetch
|
|
||||||
bat
|
|
||||||
eza
|
|
||||||
ollama
|
|
||||||
sl
|
|
||||||
fallout-ce
|
|
||||||
fallout2-ce
|
|
||||||
#LSP + formatters/linters
|
|
||||||
lua-language-server
|
|
||||||
nil
|
|
||||||
alejandra
|
|
||||||
statix
|
|
||||||
texlab
|
|
||||||
clang-tools
|
|
||||||
# rust-analyzer
|
|
||||||
#clippy
|
|
||||||
# rustfmt
|
|
||||||
#runpod
|
|
||||||
docker
|
|
||||||
nh
|
|
||||||
fastfetch
|
|
||||||
]
|
|
||||||
++ [zls.packages.x86_64-linux.zls];
|
|
||||||
|
|
||||||
programs.atuin = {
|
|
||||||
enable = true;
|
|
||||||
enableBashIntegration = true;
|
|
||||||
enableFishIntegration = true;
|
|
||||||
daemon.enable = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.direnv = {
|
programs = shared-programs;
|
||||||
enable = true;
|
|
||||||
#enableFishIntegration = true;
|
|
||||||
nix-direnv.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.neovim = {
|
|
||||||
viAlias = true;
|
|
||||||
vimAlias = true;
|
|
||||||
extraLuaPackages = ps: [ps.magick];
|
|
||||||
extraPackages = [pkgs.imagemagick];
|
|
||||||
};
|
|
||||||
#Link neovim config into nix
|
|
||||||
#xdg.configFile.nvim.source = ./nvim;
|
|
||||||
xdg.mimeApps.defaultApplications."inode/directory" = "dolphin.desktop";
|
xdg.mimeApps.defaultApplications."inode/directory" = "dolphin.desktop";
|
||||||
# xdg.mimeApps.defaultApplications = {"inode/directory" = "org.kde.dolphin.desktop";};
|
|
||||||
|
|
||||||
programs.kitty = {
|
|
||||||
enable = true;
|
|
||||||
themeFile = "Catppuccin-Mocha";
|
|
||||||
extraConfig = "font_family Iosevka NF
|
|
||||||
italic_font auto
|
|
||||||
bold_italic_font auto
|
|
||||||
bold_font auto";
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.mangohud.enable = true;
|
|
||||||
|
|
||||||
programs.fish = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
plugins = [
|
|
||||||
{
|
|
||||||
name = "tide";
|
|
||||||
src = pkgs.fishPlugins.tide.src;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
shellAliases = {
|
|
||||||
# hm-update = "git add home.nix ; git commit -m 'updated home-manager config'; git push origin main; home-manager switch --flake ~/.dotfiles/#nmarks";
|
|
||||||
# sys-update = "git add configuration.nix ; git commit -m 'updated system config'; git push origin main; sudo nixos-rebuild switch --flake ~/.dotfiles/#nmarks";
|
|
||||||
# full-update = "sys-update; hm-update";
|
|
||||||
reboot-windows = "sudo efibootmgr --bootnext 0000; sudo reboot -h now";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.hyfetch = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
backend = "fastfetch";
|
|
||||||
preset = "bisexual";
|
|
||||||
mode = "rgb";
|
|
||||||
light_dark = "dark";
|
|
||||||
lightness = {
|
|
||||||
};
|
|
||||||
color_align = {
|
|
||||||
mode = "horizontal";
|
|
||||||
# custom_colors = [];
|
|
||||||
# fore_back = null;
|
|
||||||
};
|
|
||||||
distro = null;
|
|
||||||
pride_month_shown = [
|
|
||||||
];
|
|
||||||
pride_month_disable = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.glance = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
pages = [
|
|
||||||
{
|
|
||||||
name = "Home";
|
|
||||||
columns = [
|
|
||||||
{
|
|
||||||
size = "small";
|
|
||||||
widgets = [
|
|
||||||
{
|
|
||||||
type = "calendar";
|
|
||||||
first-day-of-week = "monday";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "rss";
|
|
||||||
limit = 10;
|
|
||||||
collapse-after = 3;
|
|
||||||
cache = "12h";
|
|
||||||
feeds = [
|
|
||||||
{
|
|
||||||
url = "https://selfh.st/rss/";
|
|
||||||
title = "selfh.st";
|
|
||||||
limit = 4;
|
|
||||||
}
|
|
||||||
{url = "https://ciechanow.ski/atom.xml";}
|
|
||||||
{
|
|
||||||
url = "https://www.joshwcomeau.com/rss.xml";
|
|
||||||
title = "Josh Comeau";
|
|
||||||
}
|
|
||||||
{url = "https://samwho.dev/rss.xml";}
|
|
||||||
{
|
|
||||||
url = "https://ishadeed.com/feed.xml";
|
|
||||||
title = "Ahmad Shadeed";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
size = "full";
|
|
||||||
widgets = [
|
|
||||||
{
|
|
||||||
type = "group";
|
|
||||||
widgets = [{type = "hacker-news";} {type = "lobsters";}];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "videos";
|
|
||||||
channels = ["UCXuqSBlHAE6Xw-yeJA0Tunw" "UCR-DXc1voovS8nhAvccRZhg" "UCsBjURrPoezykLs9EqgamOA" "UCBJycsmduvYEL83R_U4JriQ" "UCHnyfMqiRRG1u-2MsSQLbXA"];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "group";
|
|
||||||
widgets = [
|
|
||||||
{
|
|
||||||
type = "reddit";
|
|
||||||
subreddit = "technology";
|
|
||||||
show-thumbnails = true;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "reddit";
|
|
||||||
subreddit = "selfhosted";
|
|
||||||
show-thumbnails = true;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
size = "small";
|
|
||||||
widgets = [
|
|
||||||
{
|
|
||||||
type = "weather";
|
|
||||||
location = "London, United Kingdom";
|
|
||||||
units = "metric";
|
|
||||||
hour-format = "12h";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "markets";
|
|
||||||
symbol-link-template = "https://www.tradingview.com/symbols/{SYMBOL}/news";
|
|
||||||
markets = [
|
|
||||||
{
|
|
||||||
symbol = "SPY";
|
|
||||||
name = "S&P 500";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
symbol = "BTC-USD";
|
|
||||||
name = "Bitcoin";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
symbol = "NVDA";
|
|
||||||
name = "NVIDIA";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
symbol = "AAPL";
|
|
||||||
name = "Apple";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
symbol = "MSFT";
|
|
||||||
name = "Microsoft";
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = "releases";
|
|
||||||
cache = "1d";
|
|
||||||
repositories = ["glanceapp/glance" "go-gitea/gitea" "immich-app/immich" "syncthing/syncthing"];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
/*
|
|
||||||
programs.zsh = {
|
|
||||||
oh-my-zsh = {
|
|
||||||
enable = true;
|
|
||||||
plugins = [ "git" "extract"];
|
|
||||||
};
|
|
||||||
enableAutosuggestions = true;
|
|
||||||
enableCompletion = true;
|
|
||||||
syntaxHighlighting.enable = true;
|
|
||||||
|
|
||||||
plugins = [
|
|
||||||
{name = "powerlevel10k";src = pkgs.zsh-powerlevel10k;file = "share/zsh-powerlevel10k/powerlevel10k.zsh-theme";}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
||||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
|
||||||
# plain files is through 'home.file'.
|
|
||||||
home.file = {
|
|
||||||
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
|
||||||
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
|
||||||
# # symlink to the Nix store copy.
|
|
||||||
# ".screenrc".source = dotfiles/screenrc;
|
|
||||||
|
|
||||||
# # You can also set the file content immediately.
|
|
||||||
# ".gradle/gradle.properties".text = ''
|
|
||||||
# org.gradle.console=verbose
|
|
||||||
# org.gradle.daemon.idletimeout=3600000
|
|
||||||
# '';
|
|
||||||
};
|
|
||||||
|
|
||||||
# You can also manage environment variables but you will have to manually
|
|
||||||
# source
|
|
||||||
#
|
|
||||||
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
# or
|
|
||||||
#
|
|
||||||
# /etc/profiles/per-user/nmarks/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
# if you don't want to manage your shell through Home Manager.
|
|
||||||
home.sessionVariables = {
|
|
||||||
EDITOR = "nvim";
|
|
||||||
VISUAL = "nvim";
|
|
||||||
TERMINAL = "ghostty";
|
|
||||||
BROWSER = "firefox";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
|
||||||
programs.home-manager.enable = true;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
inputs,
|
inputs,
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
lib,
|
||||||
ghostty,
|
ghostty,
|
||||||
moonlight,
|
moonlight,
|
||||||
...
|
...
|
||||||
|
@ -21,210 +22,10 @@
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# imports = [
|
home.packages = pkgs.callPackage ../shared/packages.nix {};
|
||||||
# ./zed-editor.nix
|
|
||||||
# ];
|
|
||||||
|
|
||||||
# imports = [discord/default.nix];
|
programs = import ../shared/home-programs.nix {inherit config pkgs lib;};
|
||||||
# sys.discord.enable = true;
|
|
||||||
|
|
||||||
# The home.packages option allows you to install Nix packages into your
|
|
||||||
# environment.
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
# ghostty.packages.aarch64-darwin.default
|
|
||||||
python312
|
|
||||||
uv
|
|
||||||
fd
|
|
||||||
lua51Packages.lua
|
|
||||||
lua51Packages.luarocks
|
|
||||||
luajitPackages.magick
|
|
||||||
ripgrep
|
|
||||||
lemonade
|
|
||||||
anki-bin
|
|
||||||
wireguard-tools
|
|
||||||
ruff
|
|
||||||
python312Packages.jedi-language-server
|
|
||||||
tor
|
|
||||||
#spotify
|
|
||||||
#stremio
|
|
||||||
fzf
|
|
||||||
zigpkgs.master
|
|
||||||
stylua
|
|
||||||
cachix
|
|
||||||
btop
|
|
||||||
neofetch
|
|
||||||
direnv
|
|
||||||
tmux
|
|
||||||
zellij
|
|
||||||
qemu
|
|
||||||
vimgolf
|
|
||||||
lazygit
|
|
||||||
rustup
|
|
||||||
file
|
|
||||||
vesktop
|
|
||||||
discord
|
|
||||||
# itch : THIS IS BROKEN FOR SOME REASON, need to pin it??
|
|
||||||
qbittorrent
|
|
||||||
deno
|
|
||||||
imagemagick
|
|
||||||
pkg-config
|
|
||||||
#mpv
|
|
||||||
comma
|
|
||||||
gnumake
|
|
||||||
#signal-desktop
|
|
||||||
#zed-editor
|
|
||||||
#getting foundry to work!
|
|
||||||
#nodejs_21
|
|
||||||
#productivty
|
|
||||||
#todoist-electron
|
|
||||||
#Gaming
|
|
||||||
prismlauncher
|
|
||||||
# for cmpm17
|
|
||||||
# binwalk
|
|
||||||
exiftool
|
|
||||||
#for fun
|
|
||||||
cowsay
|
|
||||||
cmatrix
|
|
||||||
hyfetch
|
|
||||||
bat
|
|
||||||
eza
|
|
||||||
ollama
|
|
||||||
sl
|
|
||||||
#LSP + formatters/linters
|
|
||||||
texlivePackages.chktex
|
|
||||||
lua-language-server
|
|
||||||
nil
|
|
||||||
alejandra
|
|
||||||
statix
|
|
||||||
texlab
|
|
||||||
clang-tools
|
|
||||||
# rust-analyzer
|
|
||||||
#clippy
|
|
||||||
# rustfmt
|
|
||||||
#runpod
|
|
||||||
docker
|
|
||||||
nh
|
|
||||||
fastfetch
|
|
||||||
];
|
|
||||||
programs.direnv = {
|
|
||||||
enable = true;
|
|
||||||
#enableFishIntegration = true;
|
|
||||||
nix-direnv.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.neovim = {
|
|
||||||
viAlias = true;
|
|
||||||
vimAlias = true;
|
|
||||||
extraLuaPackages = ps: [ps.magick];
|
|
||||||
extraPackages = [pkgs.imagemagick];
|
|
||||||
};
|
|
||||||
#Link neovim config into nix
|
|
||||||
#xdg.configFile.nvim.source = ./nvim;
|
|
||||||
#xdg.mimeApps.defaultApplications."inode/directory" = "dolphin.desktop";
|
|
||||||
# xdg.mimeApps.defaultApplications = {"inode/directory" = "org.kde.dolphin.desktop";};
|
|
||||||
|
|
||||||
programs.atuin = {
|
|
||||||
enable = true;
|
|
||||||
enableBashIntegration = true;
|
|
||||||
enableFishIntegration = true;
|
|
||||||
daemon.enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.fish = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
plugins = [
|
|
||||||
{
|
|
||||||
name = "tide";
|
|
||||||
src = pkgs.fishPlugins.tide.src;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
shellAliases = {
|
|
||||||
# DYLD_FALLBACK_LIBRARY_PATH = "$(brew --prefix)/lib:$DYLD_FALLBACK_LIBRARY_PATH";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.moonlight-mod = {
|
|
||||||
enable = true;
|
|
||||||
stable = {
|
|
||||||
extensions = {
|
|
||||||
allActivites.enabled = true;
|
|
||||||
alwaysFocus.enabled = true;
|
|
||||||
|
|
||||||
betterEmbedsYT = {
|
|
||||||
enabled = true;
|
|
||||||
config = {
|
|
||||||
fullDescription = false;
|
|
||||||
expandDescription = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.hyfetch = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
backend = "fastfetch";
|
|
||||||
preset = "bisexual";
|
|
||||||
mode = "rgb";
|
|
||||||
light_dark = "dark";
|
|
||||||
lightness = {
|
|
||||||
};
|
|
||||||
color_align = {
|
|
||||||
mode = "horizontal";
|
|
||||||
# custom_colors = [];
|
|
||||||
# fore_back = null;
|
|
||||||
};
|
|
||||||
distro = null;
|
|
||||||
pride_month_shown = [
|
|
||||||
];
|
|
||||||
pride_month_disable = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
programs.zsh = {
|
|
||||||
oh-my-zsh = {
|
|
||||||
enable = true;
|
|
||||||
plugins = [ "git" "extract"];
|
|
||||||
};
|
|
||||||
enableAutosuggestions = true;
|
|
||||||
enableCompletion = true;
|
|
||||||
syntaxHighlighting.enable = true;
|
|
||||||
|
|
||||||
plugins = [
|
|
||||||
{name = "powerlevel10k";src = pkgs.zsh-powerlevel10k;file = "share/zsh-powerlevel10k/powerlevel10k.zsh-theme";}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
||||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
|
||||||
# plain files is through 'home.file'.
|
|
||||||
home.file = {
|
|
||||||
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
|
||||||
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
|
||||||
# # symlink to the Nix store copy.
|
|
||||||
# ".screenrc".source = dotfiles/screenrc;
|
|
||||||
|
|
||||||
# # You can also set the file content immediately.
|
|
||||||
# ".gradle/gradle.properties".text = ''
|
|
||||||
# org.gradle.console=verbose
|
|
||||||
# org.gradle.daemon.idletimeout=3600000
|
|
||||||
# '';
|
|
||||||
};
|
|
||||||
|
|
||||||
# You can also manage environment variables but you will have to manually
|
|
||||||
# source
|
|
||||||
#
|
|
||||||
# ~/.nix-profile/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
# or
|
|
||||||
#
|
|
||||||
# /etc/profiles/per-user/nmarks/etc/profile.d/hm-session-vars.sh
|
|
||||||
#
|
|
||||||
# if you don't want to manage your shell through Home Manager.
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "nvim";
|
EDITOR = "nvim";
|
||||||
VISUAL = "nvim";
|
VISUAL = "nvim";
|
||||||
|
@ -233,5 +34,4 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs.home-manager.enable = true;
|
|
||||||
}
|
}
|
||||||
|
|
65
hosts/shared/home-programs.nix
Normal file
65
hosts/shared/home-programs.nix
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
atuin = {
|
||||||
|
enable = true;
|
||||||
|
enableBashIntegration = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
daemon.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
direnv = {
|
||||||
|
enable = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
nix-direnv.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
kitty = {
|
||||||
|
enable = true;
|
||||||
|
themeFile = "Catppuccin-Mocha";
|
||||||
|
extraConfig = "font_family Iosevka NF
|
||||||
|
italic_font auto
|
||||||
|
bold_italic_font auto
|
||||||
|
bold_font auto";
|
||||||
|
};
|
||||||
|
|
||||||
|
hyfetch = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
backend = "fastfetch";
|
||||||
|
preset = "bisexual";
|
||||||
|
mode = "rgb";
|
||||||
|
light_dark = "dark";
|
||||||
|
lightness = {
|
||||||
|
};
|
||||||
|
color_align = {
|
||||||
|
mode = "horizontal";
|
||||||
|
# custom_colors = [];
|
||||||
|
# fore_back = null;
|
||||||
|
};
|
||||||
|
distro = null;
|
||||||
|
pride_month_shown = [
|
||||||
|
];
|
||||||
|
pride_month_disable = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fish = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
plugins = [
|
||||||
|
{
|
||||||
|
name = "tide";
|
||||||
|
inherit (pkgs.fishPlugins.tide) src;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
shellAliases = {
|
||||||
|
reboot-windows = "sudo efibootmgr --bootnext 0000; sudo reboot -h now";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.enable = true;
|
||||||
|
}
|
139
hosts/shared/packages.nix
Normal file
139
hosts/shared/packages.nix
Normal file
|
@ -0,0 +1,139 @@
|
||||||
|
{pkgs, ...}:
|
||||||
|
with pkgs; [
|
||||||
|
#general development
|
||||||
|
just
|
||||||
|
pkg-config
|
||||||
|
gnumake
|
||||||
|
zed-editor
|
||||||
|
caddy
|
||||||
|
pm2
|
||||||
|
clang-tools
|
||||||
|
wget
|
||||||
|
git
|
||||||
|
unzip
|
||||||
|
clang
|
||||||
|
|
||||||
|
#productivity
|
||||||
|
glance
|
||||||
|
wofi
|
||||||
|
anki-bin
|
||||||
|
tailscale
|
||||||
|
|
||||||
|
#nix tools
|
||||||
|
cachix
|
||||||
|
direnv
|
||||||
|
comma
|
||||||
|
nh
|
||||||
|
podman
|
||||||
|
docker
|
||||||
|
|
||||||
|
#terminal stuff
|
||||||
|
ghostty
|
||||||
|
(btop.override {cudaSupport = true;})
|
||||||
|
tmux
|
||||||
|
zellij
|
||||||
|
lazygit
|
||||||
|
fzf
|
||||||
|
neofetch
|
||||||
|
hyfetch
|
||||||
|
fastfetch
|
||||||
|
bat
|
||||||
|
eza
|
||||||
|
ollama
|
||||||
|
uv
|
||||||
|
fd
|
||||||
|
ripgrep
|
||||||
|
file
|
||||||
|
fish
|
||||||
|
ethtool
|
||||||
|
|
||||||
|
#linux tools
|
||||||
|
pavucontrol
|
||||||
|
grub2
|
||||||
|
efibootmgr
|
||||||
|
distrobox
|
||||||
|
qemu
|
||||||
|
openconnect
|
||||||
|
wireguard-tools
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
|
xclip
|
||||||
|
|
||||||
|
#image tools
|
||||||
|
imagemagick
|
||||||
|
|
||||||
|
#chatting apps
|
||||||
|
legcord
|
||||||
|
webcord
|
||||||
|
(discord.override {
|
||||||
|
withMoonlight = true;
|
||||||
|
})
|
||||||
|
vesktop
|
||||||
|
signal-desktop
|
||||||
|
|
||||||
|
#media
|
||||||
|
calibre
|
||||||
|
kdePackages.dolphin
|
||||||
|
spotify
|
||||||
|
stremio
|
||||||
|
qbittorrent
|
||||||
|
mpv
|
||||||
|
|
||||||
|
#language servers
|
||||||
|
typst-live
|
||||||
|
lua-language-server
|
||||||
|
nil
|
||||||
|
texlab
|
||||||
|
texlivePackages.chktex
|
||||||
|
|
||||||
|
#formatters/linters
|
||||||
|
stylua
|
||||||
|
alejandra
|
||||||
|
statix
|
||||||
|
|
||||||
|
#neovim deps
|
||||||
|
lua51Packages.lua
|
||||||
|
lua51Packages.luarocks-nix
|
||||||
|
codespell
|
||||||
|
typst
|
||||||
|
|
||||||
|
#python
|
||||||
|
pyright
|
||||||
|
basedpyright
|
||||||
|
ruff
|
||||||
|
python312Packages.python
|
||||||
|
python312Packages.pynvim
|
||||||
|
python312Packages.pip
|
||||||
|
|
||||||
|
#programming languages
|
||||||
|
R
|
||||||
|
deno
|
||||||
|
ruby
|
||||||
|
julia
|
||||||
|
nodePackages.npm
|
||||||
|
go
|
||||||
|
|
||||||
|
#gaming
|
||||||
|
steam
|
||||||
|
bottles
|
||||||
|
path-of-building
|
||||||
|
lutris
|
||||||
|
wineWowPackages.stable
|
||||||
|
winetricks
|
||||||
|
dxvk_2
|
||||||
|
mangohud
|
||||||
|
vulkan-tools
|
||||||
|
prismlauncher
|
||||||
|
steam-run
|
||||||
|
|
||||||
|
#browsers
|
||||||
|
tor
|
||||||
|
firefox
|
||||||
|
|
||||||
|
#math
|
||||||
|
texlive.combined.scheme-full
|
||||||
|
|
||||||
|
#fun things
|
||||||
|
cowsay
|
||||||
|
cmatrix
|
||||||
|
sl
|
||||||
|
]
|
Loading…
Reference in a new issue