This commit is contained in:
Dragyx 2024-04-29 13:17:54 +02:00
commit 45218c192d
99 changed files with 679 additions and 12821 deletions

View file

@ -3,6 +3,7 @@ _: {
./git.nix
./starship.nix
./zsh.nix
./neovim.nix
./neovim.nix
./fish.nix
];
}

66
modules/cli/fish.nix Normal file
View file

@ -0,0 +1,66 @@
{
config,
lib,
pkgs,
...
}: with lib; let
cfg = config.modules.programs.fish;
username = config.modules.other.system.username;
in {
options.modules.programs.fish = {
enable = mkEnableOption "fish";
extraAliases = mkOption {
type = types.attrs;
description = "extra shell aliases";
default = {};
};
profiling = mkOption {
type = types.bool;
description = "enable zsh profiling";
default = false;
};
};
config = mkIf cfg.enable {
programs.fish.enable = true;
users.users.${username}.shell = pkgs.fish;
environment = {
shells = [ pkgs.fish ];
pathsToLink = [ "/share/fish" ];
};
home-manager.users.${username} = {
programs.fish = {
enable = true;
interactiveShellInit = "set fish_greeting";
plugins = [
];
shellAliases = {
cl = "clear";
cp = "cp -ivr";
mv = "mv -iv";
rm = "trash -v";
l = "eza -a --icons";
e = "eza -lha --icons --git";
untar = "tar -xvf";
untargz = "tar -xzf";
mnt = "udisksctl mount -b";
umnt = "udisksctl unmount -b";
v = "nvim";
kys = "shutdown now";
gpl = "curl https://www.gnu.org/licenses/gpl-3.0.txt -o LICENSE";
agpl = "curl https://www.gnu.org/licenses/agpl-3.0.txt -o LICENSE";
g = "git";
gs = "g stash";
n = "nix";
woman = "man";
open = "xdg-open";
":q" = "exit";
} // cfg.extraAliases;
};
};
};
}

View file

@ -34,7 +34,7 @@ in {
config = mkIf cfg.enable {
programs.zsh.enable = true;
users.users.${username}.shell = pkgs.zsh;
# users.users.${username}.shell = pkgs.zsh;
environment = {
shells = [ pkgs.zsh ];
pathsToLink = [ "/share/zsh" ];

View file

@ -10,10 +10,12 @@ _: {
./obs.nix
./foot.nix
./rofi.nix
./vivado2.nix
./WM
./kitty.nix
./vivado.nix
./alacritty.nix
./firefox.nix
./steam.nix
./minecraft.nix
];
}

78
modules/gui/kitty.nix Normal file
View file

@ -0,0 +1,78 @@
{ config, lib, pkgs, ... }:
with lib; let
cfg = config.modules.programs.kitty;
username = config.modules.other.system.username;
in {
options.modules.programs.kitty.enable = mkEnableOption "kitty";
config = mkIf cfg.enable {
home-manager.users.${username} = {
programs.kitty = {
enable = true;
settings = {
font_size = "13.0";
mouse_hide_wait = -1;
url_style = "curly";
open_url_with = "default";
background_opacity = "0.9";
confirm_os_window_close = "0";
font_family = "JetBrainsMono Nerd Font";
cursor_text_color = "background";
url_color = "#83a598";
visual_bell_color = "#8ec07c";
bell_border_color = "#8ec07c";
active_border_color = "#d3869b";
inactive_border_color = "#665c54";
foreground = "#ebdbb2";
background = "#282828";
selection_foreground = "#928374";
selection_background = "#ebdbb2";
active_tab_foreground = "#fbf1c7";
active_tab_background = "#665c54";
inactive_tab_foreground = "#a89984";
inactive_tab_background = "#3c3836";
# black (bg3/bg4)
color0 = "#665c54";
color8 = "#7c6f64";
# red
color1 = "#cc241d";
color9 = "#fb4934";
#: green
color2 = "#98971a";
color10 = "#b8bb26";
# yellow
color3 = "#d79921";
color11 = "#fabd2f";
# blue
color4 = "#458588";
color12 = "#83a598";
# purple
color5 = "#b16286";
color13 = "#d3869b";
# aqua
color6 = "#689d6a";
color14 = "#8ec07c";
# white (fg4/fg3)
color7 = "#a89984";
color15 = "#bdae93";
};
};
};
};
}

28
modules/gui/minecraft.nix Normal file
View file

@ -0,0 +1,28 @@
{ config, lib, inputs, pkgs, ... }:
with lib; let
username = config.modules.other.system.username;
cfg = config.modules.programs.minecraft;
in {
options.modules.programs.minecraft = {
enable = mkEnableOption "minecraft";
wayland = mkEnableOption "wayland";
};
config = mkIf cfg.enable {
# Set wayland environment flag
environment.variables = mkIf cfg.wayland {
__GL_THREADED_OPTIMIZATIONS=0;
};
# Install glfw-wayland-minecraft
environment.systemPackages = with pkgs; mkIf cfg.wayland [
glfw-wayland-minecraft # Use these parameters in the prism launcher: -Dfml.earlyprogresswindow=false -Dorg.lwjgl.glfw.libname=/nix/store/ypkdx5844pp1vdw2z2nmnf2nb9kgl0mp-glfw-wayland-minecraft-unstable-2023-06-01/lib/libglfw.so
];
home-manager.users.${username} = {
# Install minecraft
home.packages = with pkgs; [
prismlauncher
];
};
};
}

View file

@ -33,8 +33,8 @@ in {
autoUpdate = false;
autoUpdateNotification = false;
useQuickCss = true;
themeLinks = [];
enabledThemes = ["Catppuccin.theme.css"];
themeLinks = ["https://github.com/Costeer/Gruvbox-Material-Themes/blob/main/Discord%20Theme/gruvboxmaterial.theme.css"];
enabledThemes = ["gruvboxmaterial.theme.css"];
enableReactDevtools = true;
frameless = false;
transparent = false;

View file

@ -27,7 +27,7 @@ in {
users.users.${cfg.username} = {
isNormalUser = true;
extraGroups = [ "wheel" ];
extraGroups = [ "wheel" "adbusers" ];
};
};
}

View file

@ -1,5 +1,5 @@
{
config,
pkgs, config,
...
}: let
username = config.modules.other.system.username;
@ -11,6 +11,7 @@
media_player = "mpv.desktop";
image_viewer = "imv.desktop";
text_editor = "nvim.desktop";
terminal = "alacritty.desktop";
in {
/* environment.sessionVariables = {
@ -36,6 +37,16 @@ in {
svn = "svn --config-dir ${hmCfg.xdg.configHome}/subversion";
wget = "wget --hsts-file=\"${hmCfg.xdg.dataHome}/wget-hsts\"";
};
xdg.portal = {
enable = true;
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
];
};
environment.sessionVariables = {
TERMINAL = "${terminal}";
};
home-manager.users.${username} = {
xdg.configFile."npm/npmrc".text = ''
prefix=${hmCfg.xdg.dataHome}/npm

View file

@ -3,7 +3,7 @@ _: {
./btop.nix
# ./helix.nix
./neovim.nix
# ./newsboat.nix
./newsboat.nix
./ncmpcpp.nix
./yazi.nix
];

View file

@ -10,9 +10,72 @@ in {
xdg.configFile."ncmpcpp/config".source = ./config;
programs.ncmpcpp = {
enable = true;
package = (pkgs.ncmpcpp.override {visualizerSupport = true;});
mpdMusicDir = "/home/vali/Nextcloud/Media/Music";
settings = {
mpd_host = "127.0.0.1";
mpd_port = "6600";
alternative_header_first_line_format = "$5{$b%t$/b}$9";
alternative_header_second_line_format = "$3by $7{$b%a$/b}$9 $3from $7{$b%b$/b}$9 $5{(%y)}";
song_list_format = " $2%n$(end) $9 $3%a$(end) $(245)-$9 $(246)%t$9 $R{ $5%y$9}$(end) $(246)%lq$(end)";
song_columns_list_format ="(3f)[red]{n} (3f)[246]{} (35)[white]{t} (18)[blue]{a} (30)[green]{b} (5f)[yellow]{d} (5f)[red]{y} (7f)[magenta]{l}";
song_status_format = "$b $8%A $8$3 $3%t $3$5 $5%b $5$2 $2%y $2$8 %g";
playlist_display_mode = "columns";
browser_display_mode = "columns";
search_engine_display_mode = "columns";
now_playing_prefix = "$b";
now_playing_suffix = "$/b";
browser_playlist_prefix = "$2 $5 ";
playlist_disable_highlight_delay = "1";
message_delay_time = "1";
progressbar_look = "";
colors_enabled = "yes";
empty_tag_color = "red";
statusbar_color = "blue";
state_line_color = "black";
state_flags_color = "default";
main_window_color = "blue";
header_window_color = "white";
alternative_ui_separator_color = "black";
window_border_color = "green";
active_window_border = "red";
volume_color = "default";
progressbar_color = "black";
progressbar_elapsed_color = "blue";
statusbar_time_color = "blue";
player_state_color = "default";
display_bitrate = "yes";
autocenter_mode = "yes";
centered_cursor = "yes";
titles_visibility = "no";
enable_window_title = "yes";
statusbar_visibility = "yes";
empty_tag_marker="";
mouse_support = "yes";
header_visibility = "no";
display_remaining_time = "no";
ask_before_clearing_playlists = "yes";
discard_colors_if_item_is_selected = "yes";
user_interface = "alternative";
default_find_mode = "wrapped";
lyrics_directory = "~/.lyrics";
follow_now_playing_lyrics = "yes";
store_lyrics_in_song_dir = "no";
ignore_leading_the = "yes";
lines_scrolled = "1";
mouse_list_scroll_whole_page = "no";
show_hidden_files_in_local_browser = "no";
startup_screen = "playlist";
execute_on_song_change="/home/dobbie/.bin/np";
connected_message_on_startup = "no";
playlist_separate_albums = "no";
allow_for_physical_item_deletion = "no";
visualizer_in_stereo = "yes";
visualizer_data_source = "/tmp/mpd.fifo";
visualizer_type = "wave_filled";
visualizer_look = "";
};
};
};
};
}

82
modules/tui/newsboat.nix Normal file
View file

@ -0,0 +1,82 @@
{
config,
lib,
...
}: with lib; let
cfg = config.modules.programs.newsboat;
username = config.modules.other.system.username;
in {
options.modules.programs.newsboat.enable = mkEnableOption "newsboat";
config = mkIf cfg.enable {
home-manager.users.${username} = {
programs.newsboat = {
enable = true;
autoReload = true;
extraConfig = ''
download-full-page yes
download-retries 3
error-log /dev/null
cookie-cache ~/.cache/newsboat/cookies.txt
bind-key j down
bind-key k up
bind-key G end
bind-key g home
bind-key d pagedown
bind-key u pageup
bind-key a toggle-article-read
macro x set browser "setsid -f mpv --really-quiet --no-terminal" ; open-in-browser ; set browser librewolf
color listnormal color15 default
color listnormal_unread color2 default
color listfocus_unread color2 color0
color listfocus default color0
color background default default
color article default default
color end-of-text-marker color8 default
color info color4 color8
color hint-separator default color8
color hint-description default color8
color title color14 color8
highlight article "^(Feed|Title|Author|Link|Date): .+" color4 default bold
highlight article "^(Feed|Title|Author|Link|Date):" color14 default bold
highlight article "\\((link|image|video)\\)" color8 default
highlight article "https?://[^ ]+" color4 default
highlight article "\[[0-9]+\]" color6 default bold
user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36"
'';
urls = [
{
title = "NixOS Weekly";
url = "https://weekly.nixos.org/feeds/all.rss.xml";
}
{
title = "Veronica Explains";
url = "https://www.youtube.com/feeds/videos.xml?channel_id=UCMiyV_Ib77XLpzHPQH_q0qQ";
}
{
title = "Mental Outlaw";
url = "https://www.youtube.com/feeds/videos.xml?channel_id=UC7YOGHUfC1Tb6E4pudI9STA";
}
{
title = "Hacker News";
url = "https://hnrss.org/newest";
}
{
title = "Phoronix";
url = "https://www.phoronix.com/rss.php";
}
{
title = "LWN";
url = "https://lwn.net/headlines/rss";
}
{
title = "Hyprland Commit Feed";
url = "https://github.com/hyprwm/Hyprland/commits/main.atom";
}
];
};
};
};
}