add restruct2
This commit is contained in:
36
home/extra/adam.nix
Normal file
36
home/extra/adam.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./zellij
|
||||
./firefox
|
||||
./neovim
|
||||
./mako
|
||||
];
|
||||
home.packages = with pkgs; [
|
||||
# Desktop
|
||||
alacritty
|
||||
wl-clipboard
|
||||
keepassxc
|
||||
ranger
|
||||
webcord
|
||||
xfce.thunar
|
||||
xfce.thunar-volman
|
||||
xfce.thunar-archive-plugin
|
||||
gnome.file-roller
|
||||
wireguard-tools
|
||||
wpa_supplicant
|
||||
ntfs3g
|
||||
kdePackages.polkit-kde-agent-1
|
||||
networkmanagerapplet
|
||||
htop
|
||||
btop
|
||||
pamixer
|
||||
qbittorrent
|
||||
fastfetch
|
||||
waybar
|
||||
nwg-look
|
||||
thefuck
|
||||
calcurse
|
||||
gnome.adwaita-icon-theme
|
||||
];
|
||||
}
|
||||
37
home/extra/cnst.nix
Normal file
37
home/extra/cnst.nix
Normal file
@@ -0,0 +1,37 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./firefox
|
||||
./mako
|
||||
./neovim
|
||||
./zellij
|
||||
];
|
||||
home.packages = with pkgs; [
|
||||
# Desktop
|
||||
alacritty
|
||||
wl-clipboard
|
||||
keepassxc
|
||||
ranger
|
||||
webcord
|
||||
xfce.thunar
|
||||
xfce.thunar-volman
|
||||
xfce.thunar-archive-plugin
|
||||
gnome.file-roller
|
||||
wireguard-tools
|
||||
wpa_supplicant
|
||||
ntfs3g
|
||||
kdePackages.polkit-kde-agent-1
|
||||
networkmanagerapplet
|
||||
htop
|
||||
btop
|
||||
pamixer
|
||||
virt-manager
|
||||
qbittorrent
|
||||
fastfetch
|
||||
waybar
|
||||
nwg-look
|
||||
thefuck
|
||||
calcurse
|
||||
gnome.adwaita-icon-theme
|
||||
];
|
||||
}
|
||||
27
home/extra/firefox/default.nix
Normal file
27
home/extra/firefox/default.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
firefoxFlake = inputs.firefox-nightly.packages.${pkgs.stdenv.hostPlatform.system};
|
||||
_firefoxNightly = firefoxFlake.firefox-nightly-bin;
|
||||
|
||||
_chrome = pkgs.google-chrome.override { commandLineArgs = [ "--force-dark-mode" ]; };
|
||||
in
|
||||
{
|
||||
home.packages = lib.mkMerge [
|
||||
(lib.mkIf (pkgs.hostPlatform.system == "x86_64-linux") (
|
||||
with pkgs;
|
||||
[
|
||||
# browsers
|
||||
_firefoxNightly
|
||||
pkgs.firefox-bin
|
||||
_chrome
|
||||
]
|
||||
))
|
||||
];
|
||||
}
|
||||
12
home/extra/firefox/default.nixbak
Normal file
12
home/extra/firefox/default.nixbak
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
xdg.mimeApps.defaultApplications = {
|
||||
"text/html" = [ "firefox.desktop" ];
|
||||
"text/xml" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/http" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/https" = [ "firefox.desktop" ];
|
||||
};
|
||||
}
|
||||
27
home/extra/mako/default.nix
Normal file
27
home/extra/mako/default.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = [ pkgs.libnotify ];
|
||||
|
||||
services.mako = {
|
||||
enable = true;
|
||||
iconPath = "$HOME/.nix-profile/share/icons/Gruvbox-Plus-Dark";
|
||||
font = "FiraCode Nerd Font Medium 12";
|
||||
padding = "10";
|
||||
margin = "10";
|
||||
anchor = "bottom-right";
|
||||
width = 400;
|
||||
height = 150;
|
||||
borderSize = 2;
|
||||
defaultTimeout = 12000;
|
||||
backgroundColor = "#3c3836dd";
|
||||
borderColor = "#689d6add";
|
||||
textColor = "#d5c4a1dd";
|
||||
layer = "overlay";
|
||||
extraConfig = ''
|
||||
max-history=50
|
||||
outer-margin=25
|
||||
icon-location=right
|
||||
max-icon-size=48
|
||||
'';
|
||||
};
|
||||
}
|
||||
103
home/extra/neovim/default.nix
Normal file
103
home/extra/neovim/default.nix
Normal file
@@ -0,0 +1,103 @@
|
||||
{ pkgs, inputs, ... }:
|
||||
with pkgs;
|
||||
let
|
||||
|
||||
tools = [
|
||||
fswatch # File watcher utility, replacing libuv.fs_event for neovim 10.0
|
||||
fzf
|
||||
git
|
||||
sqlite
|
||||
tree-sitter
|
||||
];
|
||||
|
||||
c = [
|
||||
clang
|
||||
clang-tools
|
||||
cmake
|
||||
gcc
|
||||
gnumake
|
||||
];
|
||||
|
||||
gamedev = [
|
||||
# parser, linter and formatter for GDScript
|
||||
gdtoolkit_3
|
||||
gdtoolkit_4
|
||||
];
|
||||
|
||||
golang = [
|
||||
delve # debugger
|
||||
go
|
||||
gofumpt
|
||||
goimports-reviser
|
||||
golines
|
||||
gopls
|
||||
gotools
|
||||
];
|
||||
|
||||
lua = [
|
||||
lua-language-server
|
||||
stylua
|
||||
];
|
||||
|
||||
markup = [
|
||||
cbfmt # format codeblocks
|
||||
codespell
|
||||
markdownlint-cli
|
||||
mdformat
|
||||
typst-lsp
|
||||
];
|
||||
|
||||
nix = [
|
||||
alejandra
|
||||
nixd
|
||||
nixfmt-rfc-style
|
||||
nixpkgs-fmt
|
||||
statix
|
||||
];
|
||||
|
||||
python = [
|
||||
black
|
||||
isort
|
||||
python311Packages.jedi-language-server
|
||||
ruff
|
||||
ruff-lsp
|
||||
];
|
||||
|
||||
rust = [
|
||||
cargo
|
||||
rustfmt
|
||||
rust-analyzer
|
||||
];
|
||||
|
||||
shell = [
|
||||
nodePackages.bash-language-server
|
||||
shellcheck
|
||||
shfmt
|
||||
];
|
||||
|
||||
web = [
|
||||
deno
|
||||
nodePackages.sql-formatter
|
||||
nodePackages.typescript-language-server
|
||||
nodejs
|
||||
prettierd # multi-language formatters
|
||||
vscode-langservers-extracted
|
||||
yarn
|
||||
];
|
||||
|
||||
extraPackages =
|
||||
tools ++ c ++ gamedev ++ golang ++ lua ++ markup ++ nix ++ python ++ rust ++ shell ++ web;
|
||||
in
|
||||
|
||||
{
|
||||
# for quick development
|
||||
home.packages = rust;
|
||||
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
package = inputs.neovim-nightly-overlay.packages.${pkgs.system}.default;
|
||||
plugins = with pkgs.vimPlugins; [ telescope-cheat-nvim ];
|
||||
inherit extraPackages;
|
||||
};
|
||||
}
|
||||
86
home/extra/zellij/default.nix
Normal file
86
home/extra/zellij/default.nix
Normal file
@@ -0,0 +1,86 @@
|
||||
{
|
||||
home.shellAliases = {
|
||||
zj = "zellij";
|
||||
};
|
||||
|
||||
programs.zellij = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
|
||||
settings = {
|
||||
# Make zellij UI more compact
|
||||
ui = {
|
||||
pane_frames = {
|
||||
hide_session_name = true;
|
||||
};
|
||||
};
|
||||
default_layout = "compact";
|
||||
copy_command = "wl-copy";
|
||||
on_force_close = "detach";
|
||||
default_shell = "zsh";
|
||||
default_mode = "normal";
|
||||
|
||||
theme = "gruvbox-dark";
|
||||
|
||||
themes = {
|
||||
gruvbox-dark = {
|
||||
fg = [
|
||||
213
|
||||
196
|
||||
161
|
||||
];
|
||||
bg = [
|
||||
40
|
||||
40
|
||||
40
|
||||
];
|
||||
black = [
|
||||
60
|
||||
56
|
||||
54
|
||||
];
|
||||
red = [
|
||||
204
|
||||
36
|
||||
29
|
||||
];
|
||||
green = [
|
||||
152
|
||||
151
|
||||
26
|
||||
];
|
||||
yellow = [
|
||||
215
|
||||
153
|
||||
33
|
||||
];
|
||||
blue = [
|
||||
69
|
||||
133
|
||||
136
|
||||
];
|
||||
magenta = [
|
||||
177
|
||||
98
|
||||
134
|
||||
];
|
||||
cyan = [
|
||||
104
|
||||
157
|
||||
106
|
||||
];
|
||||
white = [
|
||||
251
|
||||
241
|
||||
199
|
||||
];
|
||||
orange = [
|
||||
214
|
||||
93
|
||||
14
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user