Merge branch 'main' of github.com:fwastring/nix

This commit is contained in:
fwastring 2025-05-22 12:05:04 +02:00
commit 1d6117b631
3 changed files with 296 additions and 9 deletions

176
config/home-desktop.nix Normal file
View file

@ -0,0 +1,176 @@
# This is your home-manager configuration file
# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix)
{
inputs,
lib,
config,
pkgs,
myhostname,
...
}: {
imports = [
../shared/dwm.nix
../shared/vscode.nix
../shared/dmenu.nix
../shared/rofi.nix
../shared/kitty.nix
../shared/alacritty.nix
../shared/tmux.nix
../shared/vim.nix
../shared/fish.nix
../shared/git.nix
../shared/nixpkgs.nix
../shared/firefox.nix
../shared/zathura.nix
../shared/lazygit.nix
../shared/ssh.nix
../shared/aerc.nix
../shared/oh-my-posh.nix
];
nixpkgs = {
overlays = [];
config = {
allowUnfree = true;
allowUnfreePredicate = _: true;
};
};
home.packages = with pkgs; [
# System
xsel
unzip
zip
wget
alsa-utils
upower
gcc
gnumake
cmake
arion
htop
pavucontrol
procps
openssh
networkmanager
fd
bat
bluez
bluez-tools
unstable.betterlockscreen
tmux
unstable.fzf
eza
btop
thttpd
xcolor
openssl
dig
jq
# Dev
unstable.deno
unstable.hugo
unstable.logstash
ngrok
tailwindcss
nodejs_22
gh-f
gh
yarn
plantuml
go
dotnetCorePackages.sdk_8_0_3xx
templ
#Tools
qrencode
air
k9s
git
lazydocker
kubectl
#LSP
roslyn
roslyn-ls
python312Packages.python-lsp-server
yaml-language-server
nil
jdt-language-server
texlab
marksman
nodePackages_latest.bash-language-server
typescript
nodePackages_latest.typescript-language-server
nodePackages_latest.vls
nodePackages_latest.volar
lua-language-server
tree-sitter
gopls
rust-analyzer
# UI
rofi-bluetooth
pastel
imagemagick
#VPN
openvpn
networkmanagerapplet
networkmanager-l2tp
strongswan
# Display
scrot
xbanish
feh
brightnessctl
dunst
# Documents
ripgrep
grc
texliveFull
pandoc
poppler_utils
#Desktop
unstable.feishin
firefox
libreoffice
unstable.signal-desktop
pinta
zathura
vial
thunderbird
alacritty
unstable.neovim
fastfetch
lazygit
byzanz
remmina
obsidian
# Utils
speedcrunch
#Unfree
discord
slack
];
programs.home-manager.enable = true;
programs.fish.enable = true;
programs.man.generateCaches = false;
xsession.enable = true;
xsession.windowManager.command = if myhostname == "laptop" then "/home/fw/nix/.xinitrc.laptop" else if myhostname == "jobb" then "/home/fw/nix/.xinitrc.jobb" else "/home/fw/nix/.xinitrc";
home.username = "fw";
home.homeDirectory = "/home/fw";
home.stateVersion = "23.11"; # Did you read the comment?
systemd.user.startServices = "sd-switch";
}

View file

@ -18,9 +18,12 @@
networking.hostName = myhostname;
environment.systemPackages = with pkgs; [
dotnet-sdk_8
];
environment.systemPackages = with pkgs; [
qgis
koreader
foliate
k3sup
];
services.xserver.dpi = 140;

View file

@ -1,11 +1,119 @@
{ pkgs, lib, ... }:
{ config, pkgs, lib, ... }:
{
programs.rofi = {
enable = true;
plugins = with pkgs; [
rofi-calc
rofi-pulse-select
];
font = "FiraCode NerdFont 17";
# theme =
# let
# inherit (config.lib.formats.rasi) mkLiteral;
# in {
# "*" = {
# bg-col = mkLiteral "#1e1e2e";
# bg-col-light = mkLiteral "#1e1e2e";
# border-col = mkLiteral "#1e1e2e";
# selected-col = mkLiteral "#1e1e2e";
# blue = mkLiteral "#89b4fa";
# fg-col = mkLiteral "#cdd6f4";
# fg-col2 = mkLiteral "#f38ba8";
# grey = mkLiteral "#6c7086";
# };
#
# "element-text, element-icon, mode-switcher" = { # Combine selectors
# background-color = mkLiteral "inherit";
# text-color = mkLiteral "inherit";
# };
#
# "#window" = { # Use # for IDs
# height = mkLiteral "360px"; # Important: Use mkLiteral for dimensions and units
# border = mkLiteral "3px"; # Important: Use mkLiteral for dimensions and units
# border-color = mkLiteral "@border-col";
# background-color = mkLiteral "@bg-col";
# };
#
# "#mainbox" = {
# background-color = mkLiteral "@bg-col";
# };
#
# "#inputbar" = {
# children = map mkLiteral ["prompt" "entry"];
# background-color = mkLiteral "@bg-col";
# border-radius = mkLiteral "5px"; # Important: Use mkLiteral for dimensions and units
# padding = mkLiteral "2px"; # Important: Use mkLiteral for dimensions and units
# };
#
# "#prompt" = {
# background-color = mkLiteral "@blue";
# padding = mkLiteral "6px"; # Important: Use mkLiteral for dimensions and units
# text-color = mkLiteral "@bg-col";
# border-radius = mkLiteral "3px"; # Important: Use mkLiteral for dimensions and units
# margin = mkLiteral "20px 0px 0px 20px"; # Important: Use mkLiteral for dimensions and units
# };
#
# "#textbox-prompt-colon" = {
# expand = false;
# str = mkLiteral ":";
# };
#
# "#entry" = {
# padding = mkLiteral "6px"; # Important: Use mkLiteral for dimensions and units
# margin = mkLiteral "20px 0px 0px 10px"; # Important: Use mkLiteral for dimensions and units
# text-color = mkLiteral "@fg-col";
# background-color = mkLiteral "@bg-col";
# };
#
# "#listview" = {
# border = mkLiteral "0px 0px 0px"; # Important: Use mkLiteral for dimensions and units
# padding = mkLiteral "6px 0px 0px"; # Important: Use mkLiteral for dimensions and units
# margin = mkLiteral "10px 0px 0px 20px"; # Important: Use mkLiteral for dimensions and units
# columns = mkLiteral "2"; # Important: Use mkLiteral for dimensions and units
# lines = mkLiteral "5"; # Important: Use mkLiteral for dimensions and units
# background-color = mkLiteral "@bg-col";
# };
#
# "#element" = {
# padding = mkLiteral "5px"; # Important: Use mkLiteral for dimensions and units
# background-color = mkLiteral "@bg-col";
# text-color = mkLiteral "@fg-col";
# };
#
# "#element-icon" = {
# size = mkLiteral "25px"; # Important: Use mkLiteral for dimensions and units
# };
#
# "element.selected" = { # Use . for classes
# background-color = mkLiteral "@selected-col";
# text-color = mkLiteral "@fg-col2";
# };
#
# "#mode-switcher" = {
# spacing = mkLiteral "0";
# };
#
# "#button" = {
# padding = mkLiteral "10px"; # Important: Use mkLiteral for dimensions and units
# background-color = mkLiteral "@bg-col-light";
# text-color = mkLiteral "@grey";
# vertical-align = mkLiteral "0.5";
# horizontal-align = mkLiteral "0.5";
# };
#
# "button.selected" = { # Use . for classes
# background-color = mkLiteral "@bg-col";
# text-color = mkLiteral "@blue";
# };
#
# "#message" = {
# background-color = mkLiteral "@bg-col-light";
# margin = mkLiteral "2px"; # Important: Use mkLiteral for dimensions and units
# padding = mkLiteral "2px"; # Important: Use mkLiteral for dimensions and units
# border-radius = mkLiteral "5px"; # Important: Use mkLiteral for dimensions and units
# };
#
# "#textbox" = {
# padding = mkLiteral "6px"; # Important: Use mkLiteral for dimensions and units
# margin = mkLiteral "20px 0px 0px 20px"; # Important: Use mkLiteral for dimensions and units
# text-color = mkLiteral "@blue";
# background-color = mkLiteral "@bg-col-light";
# };
# };
};
}