Przystosowywanie pod siebie.

This commit is contained in:
2025-09-25 16:25:58 +02:00
parent d01e114914
commit 244567f465
35 changed files with 640 additions and 345 deletions

View File

@@ -1,11 +1,7 @@
{
inputs,
host,
...
}:
let
vars = import ../../hosts/${host}/variables.nix;
in
{
imports = [
./boot.nix

View File

@@ -2,8 +2,24 @@
{
xdg.portal = {
enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-hyprland ];
wlr.enable = true;
extraPortals = with pkgs; [
xdg-desktop-portal-hyprland
xdg-desktop-portal-gtk
];
configPackages = [ pkgs.hyprland ];
config.common = {
default = [
"hyprland"
"gtk"
];
"org.freedesktop.impl.portal.Settings" = [
"hyprland"
];
"org.freedesktop.impl.portal.FileChooser" = [
"gtk"
];
};
};
services = {
flatpak = {

View File

@@ -1,5 +1,4 @@
{
pkgs,
host,
options,
...
@@ -37,6 +36,4 @@ in
];
};
};
environment.systemPackages = with pkgs; [ networkmanagerapplet ];
}

View File

@@ -1,5 +1,4 @@
{
pkgs,
username,
...
}:
@@ -12,9 +11,4 @@
};
flake = "/home/${username}/garandos";
};
environment.systemPackages = with pkgs; [
nix-output-monitor
nvd
];
}

View File

@@ -26,10 +26,20 @@
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
# Hyprland systeminfo QT (Optional)
#inputs.hyprsysteminfo.packages.${pkgs.system}.default
nixd
nil
discord
trash-cli
eddie
dex
galculator
networkmanagerapplet
nix-output-monitor
nvd
ffmpegthumbnailer # Need For Video / Image Preview
virt-viewer # View Virtual Machines
lazydocker
docker-client
amfora # Fancy Terminal Browser For Gemini Protocol
appimage-run # Needed For AppImage Support
brightnessctl # For Screen Brightness Control
@@ -43,8 +53,7 @@
ffmpeg # Terminal Video / Audio Editing
file-roller # Archive Manager
gedit # Simple Graphical Text Editor
#gemini-cli # CLI AI client ONLY (optional)
gimp # Great Photo Editor
gimp3 # Great Photo Editor
glxinfo # needed for inxi diag util
tuigreet # The Login Manager (Sometimes Referred To As Display Manager)
htop # Simple Terminal Based System Monitor
@@ -92,7 +101,6 @@
wineWowPackages.waylandFull # wine64
lutris
space-cadet-pinball
dex
exercism
tty-solitaire
cmatrix
@@ -102,5 +110,7 @@
ookla-speedtest
kronometer
inputs.prismlauncher-cracked.packages.${system}.default
zed-editor
distrobox
];
}

View File

@@ -1,31 +0,0 @@
{ pkgs, inputs, ... }:
{
environment.systemPackages = with pkgs; [
inputs.quickshell.packages.${pkgs.system}.default
# Qt6 related kitsfor slove Qt5Compat problem
qt6.qt5compat
qt6.qtbase
qt6.qtquick3d
qt6.qtwayland
qt6.qtdeclarative
qt6.qtsvg
# alternate options
# libsForQt5.qt5compat
kdePackages.qt5compat
libsForQt5.qt5.qtgraphicaleffects
];
# necessary environment variables
environment.variables = {
QML_IMPORT_PATH = "${pkgs.qt6.qt5compat}/lib/qt-6/qml:${pkgs.qt6.qtbase}/lib/qt-6/qml";
QML2_IMPORT_PATH = "${pkgs.qt6.qt5compat}/lib/qt-6/qml:${pkgs.qt6.qtbase}/lib/qt-6/qml";
};
# make sure the Qt application is working properly
environment.sessionVariables = {
QT_QPA_PLATFORM = "wayland;xcb";
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
};
}

View File

@@ -18,5 +18,11 @@ _: {
pam.services.swaylock = {
text = ''auth include login '';
};
sudo = {
enable = true;
extraConfig = ''
Defaults pwfeedback
'';
};
};
}

View File

@@ -1,5 +1,4 @@
{
host,
pkgs,
...
}:
@@ -13,7 +12,4 @@
];
};
};
environment.systemPackages = with pkgs; [
ffmpegthumbnailer # Need For Video / Image Preview
];
}

View File

@@ -1,16 +1,10 @@
{ pkgs, ... }:
{ ... }:
{
# Only enable either docker or podman -- Not both
virtualisation = {
docker = {
enable = true;
};
docker.enable = true;
podman.enable = false;
libvirtd = {
enable = true;
};
libvirtd.enable = true;
virtualbox.host = {
enable = false;
@@ -18,13 +12,5 @@
};
};
programs = {
virt-manager.enable = false;
};
environment.systemPackages = with pkgs; [
virt-viewer # View Virtual Machines
lazydocker
docker-client
];
programs.virt-manager.enable = false;
}

View File

@@ -4,7 +4,7 @@ let
in
{
services.xserver = {
enable = false;
enable = true;
xkb = {
layout = "${keyboardLayout}";
variant = "";

View File

@@ -1,8 +1,9 @@
{ host, ... }:
{ host, username, ... }:
{
programs.bash = {
shellAliases = {
# NixOS aliases
pullos = "git -C /home/${username}/garandos pull";
upd = "nh os switch --hostname ${host}";
upg = "nh os switch --hostname ${host} --update";
upd-bt = "nh os boot --hostname ${host}";
@@ -17,7 +18,7 @@
bbr = "bun --bun run";
mkgidf = "git add . --intent-to-add . && git diff > git-diff.txt";
snano = "sudo nano";
zed = "MANGOHUD=0 /home/garand_plg/.local/bin/zed";
zed = "MANGOHUD=0 /home/${username}/.local/bin/zed";
# System aliases
flush-codium = "sudo killall codium && sudo rm -rf ~/.config/VSCodium/Cache && sudo rm -rf ~/.config/VSCodium/CachedData";

View File

@@ -4,7 +4,12 @@ let
in
{
imports = [
./fastfetch
./hyprland
./rofi
./scripts
waybarChoice
./wlogout
./amfora.nix
./bash.nix
./bash-aliases.nix
@@ -15,30 +20,23 @@ in
./cava.nix
./emoji.nix
./eza.nix
./fastfetch
./fzf.nix
./gh.nix
./git.nix
./gtk.nix
./htop.nix
./hyprland
./kitty.nix
./lazygit.nix
./librewolf.nix
./obs-studio.nix
./obs-studio.nix
./rofi
./qt.nix
./ssh.nix
./scripts
./scripts/gemini-cli.nix
./starship.nix
./stylix.nix
./swappy.nix
./swaync.nix
./tealdeer.nix
./virtmanager.nix
./wlogout
./xdg.nix
./zoxide.nix
./vscode.nix

View File

@@ -1,99 +1,150 @@
{ host, ... }:
{ host, username, ... }:
let
inherit (import ../../../hosts/${host}/variables.nix)
browser
terminal
;
inherit (import ../../../hosts/${host}/variables.nix) browser terminal;
desktopEntriesPath = "/home/${username}/.local/state/home-manager/gcroots/current-home/home-path/share/applications/";
in
{
wayland.windowManager.hyprland.settings = {
bind = [
"$modifier,Return,exec,${terminal}"
"$modifier,K,exec,list-keybinds"
"$modifier SHIFT,Return,exec,rofi-launcher"
"$modifier ,R,exec,rofi-launcher"
"$modifier SHIFT,W,exec,web-search"
"$modifier ALT,W,exec,wallsetter"
"$modifier SHIFT,N,exec,swaync-client -rs"
"$modifier,W,exec,${browser}"
"$modifier,E,exec,emopicker9000"
"$modifier,S,exec,screenshootin"
"$modifier,D,exec,discord"
"$modifier,O,exec,obs"
"$modifier,C,exec,hyprpicker -a"
"$modifier,G,exec,gimp"
"$modifier shift,T,exec,pypr toggle term"
"$modifier,T,exec, thunar"
"$modifier,M,exec,pavucontrol"
"$modifier,Q,killactive,"
"$modifier,P,pseudo,"
"$modifier,V,exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy"
"$modifier SHIFT,I,togglesplit,"
"$modifier,F,fullscreen,"
"$modifier SHIFT,F,togglefloating,"
"$modifier ALT,F,workspaceopt, allfloat"
"$modifier SHIFT,C,exit,"
"$modifier SHIFT,left,movewindow,l"
"$modifier SHIFT,right,movewindow,r"
"$modifier SHIFT,up,movewindow,u"
"$modifier SHIFT,down,movewindow,d"
"$modifier SHIFT,h,movewindow,l"
"$modifier SHIFT,l,movewindow,r"
"$modifier SHIFT,k,movewindow,u"
"$modifier SHIFT,j,movewindow,d"
"$modifier ALT, left, swapwindow,l"
"$modifier ALT, right, swapwindow,r"
"$modifier ALT, up, swapwindow,u"
"$modifier ALT, down, swapwindow,d"
"$modifier ALT, 43, swapwindow,l"
"$modifier ALT, 46, swapwindow,r"
"$modifier ALT, 45, swapwindow,u"
"$modifier ALT, 44, swapwindow,d"
"$modifier,left,movefocus,l"
"$modifier,right,movefocus,r"
"$modifier,up,movefocus,u"
"$modifier,down,movefocus,d"
"$modifier,h,movefocus,l"
"$modifier,l,movefocus,r"
"$modifier,k,movefocus,u"
"$modifier,j,movefocus,d"
"$modifier,1,workspace,1"
"$modifier,2,workspace,2"
"$modifier,3,workspace,3"
"$modifier,4,workspace,4"
"$modifier,5,workspace,5"
"$modifier,6,workspace,6"
"$modifier,7,workspace,7"
"$modifier,8,workspace,8"
"$modifier,9,workspace,9"
"$modifier,0,workspace,10"
"$modifier SHIFT,SPACE,movetoworkspace,special"
"$modifier,SPACE,togglespecialworkspace"
"$modifier SHIFT,1,movetoworkspace,1"
"$modifier SHIFT,2,movetoworkspace,2"
"$modifier SHIFT,3,movetoworkspace,3"
"$modifier SHIFT,4,movetoworkspace,4"
"$modifier SHIFT,5,movetoworkspace,5"
"$modifier SHIFT,6,movetoworkspace,6"
"$modifier SHIFT,7,movetoworkspace,7"
"$modifier SHIFT,8,movetoworkspace,8"
"$modifier SHIFT,9,movetoworkspace,9"
"$modifier SHIFT,0,movetoworkspace,10"
"$modifier CONTROL,right,workspace,e+1"
"$modifier CONTROL,left,workspace,e-1"
"$modifier,mouse_down,workspace, e+1"
"$modifier,mouse_up,workspace, e-1"
"ALT,Tab,cyclenext"
"ALT,Tab,bringactivetotop"
",XF86AudioRaiseVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"
",XF86AudioLowerVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
" ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
",XF86AudioPlay, exec, playerctl play-pause"
",XF86AudioPause, exec, playerctl play-pause"
# =============================================================================
# APLIKACJE - GŁÓWNE
# =============================================================================
"$modifier, A, exec, anki"
"$modifier, B, exec, btop"
"$modifier, C, exec, chromium"
"$modifier, D, exec, discord"
"$modifier, G, exec, gimp"
"$modifier, M, exec, plexamp"
"$modifier, N, exec, dex ${desktopEntriesPath}/garandcloud.desktop"
"$modifier, O, exec, obs"
"$modifier, Return, exec, ${terminal}"
"$modifier, S, exec, steam"
"$modifier, T, exec, thunar"
"$modifier, V, exec, codium"
"$modifier, W, exec, ${browser}"
"$modifier, Z, exec, zed-editor"
# =============================================================================
# APLIKACJE - Z SHIFT
# =============================================================================
"$modifier SHIFT, B, exec, blueman-manager"
"$modifier SHIFT, C, exec, dex ${desktopEntriesPath}/claude.desktop"
"$modifier SHIFT, G, exec, dex ${desktopEntriesPath}/chatgpt.desktop"
"$modifier SHIFT, M, exec, dex ${desktopEntriesPath}/messenger.desktop"
"$modifier SHIFT, N, exec, nextcloud"
"$modifier SHIFT, O, exec, onlyoffice-desktopeditors"
"$modifier SHIFT, Return, exec, rofi-launcher"
"$modifier SHIFT, T, exec, tutanota-desktop"
"$modifier SHIFT, W, exec, web-search"
# =============================================================================
# APLIKACJE - Z ALT I CONTROL
# =============================================================================
"$modifier ALT, M, exec, dex ${desktopEntriesPath}/mastodon.desktop"
"$modifier ALT, S, exec, slack"
"$modifier CONTROL, M, exec, mattermost-desktop"
# =============================================================================
# NARZĘDZIA SYSTEMOWE
# =============================================================================
"$modifier, E, exec, emopicker9000"
"$modifier, K, exec, galculator"
"$modifier, P, exec, hyprpicker -a"
"$modifier ALT, W, exec, wallsetter"
"$modifier SHIFT, K, exec, list-keybinds"
"$modifier SHIFT, P, exec, pavucontrol"
"$modifier SHIFT, S, exec, screenshootin"
# =============================================================================
# ZARZĄDZANIE OKNAMI
# =============================================================================
"$modifier, Escape, exec, hyprlock"
"$modifier, F, fullscreen,"
"$modifier, Q, killactive,"
"$modifier SHIFT, Escape, exit,"
"$modifier SHIFT, I, togglesplit,"
# =============================================================================
# FOKUS OKIEN
# =============================================================================
"$modifier, down, movefocus, d"
"$modifier, left, movefocus, l"
"$modifier, right, movefocus, r"
"$modifier, up, movefocus, u"
# =============================================================================
# PRZEMIESZCZANIE OKIEN
# =============================================================================
"$modifier SHIFT, down, movewindow, d"
"$modifier SHIFT, left, movewindow, l"
"$modifier SHIFT, right, movewindow, r"
"$modifier SHIFT, up, movewindow, u"
# =============================================================================
# ZAMIANA OKIEN
# =============================================================================
"$modifier ALT, down, swapwindow, d"
"$modifier ALT, left, swapwindow, l"
"$modifier ALT, right, swapwindow, r"
"$modifier ALT, up, swapwindow, u"
# =============================================================================
# WORKSPACES - PRZEŁĄCZANIE
# =============================================================================
"$modifier, 0, workspace, 10"
"$modifier, 1, workspace, 1"
"$modifier, 2, workspace, 2"
"$modifier, 3, workspace, 3"
"$modifier, 4, workspace, 4"
"$modifier, 5, workspace, 5"
"$modifier, 6, workspace, 6"
"$modifier, 7, workspace, 7"
"$modifier, 8, workspace, 8"
"$modifier, 9, workspace, 9"
"$modifier CONTROL, left, workspace, e-1"
"$modifier CONTROL, right, workspace, e+1"
"$modifier, mouse_down, workspace, e+1"
"$modifier, mouse_up, workspace, e-1"
# =============================================================================
# WORKSPACES - PRZENOSZENIE OKIEN
# =============================================================================
"$modifier SHIFT, 0, movetoworkspace, 10"
"$modifier SHIFT, 1, movetoworkspace, 1"
"$modifier SHIFT, 2, movetoworkspace, 2"
"$modifier SHIFT, 3, movetoworkspace, 3"
"$modifier SHIFT, 4, movetoworkspace, 4"
"$modifier SHIFT, 5, movetoworkspace, 5"
"$modifier SHIFT, 6, movetoworkspace, 6"
"$modifier SHIFT, 7, movetoworkspace, 7"
"$modifier SHIFT, 8, movetoworkspace, 8"
"$modifier SHIFT, 9, movetoworkspace, 9"
# =============================================================================
# MEDIA I KONTROLKI SYSTEMOWE
# =============================================================================
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
",XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
",XF86AudioNext, exec, playerctl next"
",XF86AudioPause, exec, playerctl play-pause"
",XF86AudioPlay, exec, playerctl play-pause"
",XF86AudioPrev, exec, playerctl previous"
",XF86MonBrightnessDown,exec,brightnessctl set 5%-"
",XF86MonBrightnessUp,exec,brightnessctl set +5%"
",XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"
",XF86MonBrightnessDown, exec, brightnessctl set 5%-"
",XF86MonBrightnessUp, exec, brightnessctl set +5%"
# =============================================================================
# NIEUŻYWANE KEYBINDY (ZAKOMENTOWANE)
# =============================================================================
# "$modifier , R, exec, rofi-launcher"
# "$modifier SHIFT, N, exec, swaync-client -rs"
# "$modifier, P, pseudo,"
# "$modifier SHIFT,F, togglefloating,"
# "$modifier ALT,F, workspaceopt, allfloat"
# "$modifier SHIFT, SPACE, movetoworkspace, special"
# "$modifier, SPACE, togglespecialworkspace"
# "ALT,Tab,cyclenext"
# "ALT,Tab,bringactivetotop"
];
bindm = [

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -5,23 +5,9 @@
...
}:
let
inherit (import ../../../hosts/${host}/variables.nix)
extraMonitorSettings
keyboardLayout
stylixImage
;
inherit (import ../../../hosts/${host}/variables.nix) extraMonitorSettings keyboardLayout;
in
{
home.packages = with pkgs; [
swww
grim
slurp
wl-clipboard
swappy
ydotool
hyprpolkitagent
hyprland-qtutils # needed for banners and ANR messages
];
systemd.user.targets.hyprland-session.Unit.Wants = [
"xdg-desktop-autostart.target"
];
@@ -94,7 +80,8 @@ in
key_press_enables_dpms = false;
disable_hyprland_logo = true;
disable_splash_rendering = true;
enable_swallow = false;
enable_swallow = true;
swallow_regex = "^(kitty)$";
vfr = true; # Variable Frame Rate
vrr = 2; # Variable Refresh Rate Might need to set to 0 for NVIDIA/AQ_DRM_DEVICES
# Screen flashing to black momentarily or going black when app is fullscreen

View File

@@ -11,7 +11,7 @@
};
background = [
{
path = "/home/${username}/Pictures/Wallpapers/beautifulmountainscape.jpg";
path = "/home/${username}/Pictures/Wallpapers/four-elements.jpg";
blur_passes = 3;
blur_size = 8;
}

View File

@@ -1,7 +1,5 @@
{ pkgs, ... }:
{ ... }:
{
home.packages = with pkgs; [ pyprland ];
home.file.".config/hypr/pyprland.toml".text = ''
[pyprland]
plugins = [

View File

@@ -2,18 +2,24 @@
{
home.file.".config/rofi/config-long.rasi".text = ''
@import "~/.config/rofi/config.rasi"
* {
font: "JetBrainsMono Nerd Font Mono 12";
}
window {
width: 750px;
border-radius: 20px;
border-radius: 10px;
}
mainbox {
orientation: vertical;
children: [ "inputbar", "listbox" ];
}
listview {
lines: 13;
}
inputbar {
padding: 75px 40px;
padding: 55px 30px;
background-color: transparent;
background-image: url("~/Pictures/Wallpapers/Rainnight.jpg", width);
background-image: url("~/Pictures/Wallpapers/attack-on-titan-mikasa-ackerman.jpg", width);
text-color: @foreground;
children: [ "textbox-prompt-colon", "entry" ];
}
@@ -31,12 +37,12 @@
text-color: @foreground;
}
button {
padding: 12px;
padding: 2px;
border-radius: 100%;
}
element {
spacing: 10px;
padding: 12px;
spacing: 2px;
padding: 2px;
border-radius: 100%;
}
textbox {

View File

@@ -60,7 +60,7 @@
"imagebox" = {
padding = mkLiteral "20px";
background-color = mkLiteral "transparent";
background-image = mkLiteral ''url("~/Pictures/Wallpapers/Rainnight.jpg", height)'';
background-image = mkLiteral ''url("~/Pictures/Wallpapers/fire-nation.jpg", height)'';
orientation = mkLiteral "vertical";
children = map mkLiteral [
"inputbar"

View File

@@ -1,20 +1,30 @@
{
pkgs,
username,
profile,
...
}:
{
home.packages = [
home.packages = with pkgs; [
# hyprland
swww
grim
slurp
wl-clipboard
swappy
ydotool
hyprpolkitagent
hyprland-qtutils # needed for banners and ANR messages
# pyprland
pyprland
(import ./emopicker9000.nix { inherit pkgs; })
(import ./hm-find.nix { inherit pkgs; })
(import ./keybinds.nix { inherit pkgs; })
(import ./keybinds.nix { inherit pkgs username; })
(import ./note.nix { inherit pkgs; })
(import ./note-from-clipboard.nix { inherit pkgs; })
(import ./nvidia-offload.nix { inherit pkgs; })
(import ./rofi-launcher.nix { inherit pkgs; })
(import ./screenshootin.nix { inherit pkgs; })
(import ./squirtle.nix { inherit pkgs; })
(import ./task-waybar.nix { inherit pkgs; })
(import ./wallsetter.nix {
inherit pkgs;

View File

@@ -1,40 +0,0 @@
{ config, pkgs, ... }:
let
gemini-launcher = pkgs.writeShellScriptBin "gemini-launcher" ''
#!${pkgs.bash}/bin/bash
# Define the path to your API key file
KEY_FILE="${config.home.homeDirectory}/gem.key"
# Check if the key file exists and is readable
if [ -f "$KEY_FILE" ]; then
# Source the API key from the file.
source "$KEY_FILE"
# Launch Gemini directly; it will pick up the exported key.
exec ${pkgs.kitty}/bin/kitty -e ${pkgs.gemini-cli}/bin/gemini
else
# If the key file doesn't exist, launch kitty with an informational message, then start gemini.
exec ${pkgs.kitty}/bin/kitty -e bash -c "echo 'NOTE: Gemini API key file not found at ~/.gem.key.'; echo 'To use a key, create this file with content: export GEMINI_API_KEY=\"YOUR_KEY\"'; echo; echo 'Starting Gemini CLI, which will fall back to web-based login...'; echo; exec ${pkgs.gemini-cli}/bin/gemini"
fi
'';
in
{
home.packages = [
gemini-launcher
];
xdg.desktopEntries.gemini-cli = {
name = "Gemini CLI";
comment = "Launch the Gemini CLI in Kitty terminal";
icon = "utilities-terminal";
exec = "gemini-launcher";
terminal = false;
type = "Application";
categories = [
"Development"
"Utility"
];
};
}

View File

@@ -1,15 +1,18 @@
{ pkgs }:
{ pkgs, username, ... }:
let
desktopEntriesPath = "/home/${username}/.local/state/home-manager/gcroots/current-home/home-path/share/applications/";
in
pkgs.writeShellScriptBin "list-keybinds" ''
# check if rofi is already running
if pidof rofi > /dev/null; then
pkill rofi
fi
msg=' NOTE : Clicking with Mouse or Pressing ENTER will have NO function'
msg=' = Windows/Super/CAPS LOCK (Enter nie wykonuje skrótu)'
keybinds=$(cat ~/.config/hypr/hyprland.conf | grep -E '^bind')
# replace #modifier with SUPER in the displayed keybinds for rofi
display_keybinds=$(echo "$keybinds" | sed 's/\$modifier/SUPER/g')
display_keybinds=$(echo "$keybinds" | sed 's/\$modifier//g' | sed 's|${desktopEntriesPath}/||g')
# use rofi to display the keybinds with the modified content
echo "$display_keybinds" | rofi -dmenu -i -config ~/.config/rofi/config-long.rasi -mesg "$msg"

View File

@@ -1,23 +0,0 @@
{ pkgs }:
pkgs.writeShellScriptBin "squirtle" ''
echo "

  
  
  



 
 
 
 
 
 
 
 
 
 
"
''

View File

@@ -8,11 +8,23 @@ pkgs.writeShellScriptBin "web-search" ''
declare -A URLS
URLS=(
["🌎 Search"]="https://search.brave.com/search?q="
[" Unstable Packages"]="https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query="
["🎞 YouTube"]="https://www.youtube.com/results?search_query="
["🦥 Arch Wiki"]="https://wiki.archlinux.org/title/"
["🐃 Gentoo Wiki"]="https://wiki.gentoo.org/index.php?title="
[" Search"]="https://search.garandplg.com/search?q="
[" Nix Unstable Packages"]="https://search.nixos.org/packages?channel=unstable&query="
[" Nix Options"]="https://search.nixos.org/options?query="
[" Nix Wiki"]="https://wiki.nixos.org/w/index.php?search="
[" Home Manager Options"]="https://home-manager-options.extranix.com/release=master?query="
[" Kalkulator walutowy EUR"]="https://www.money.pl/pieniadze/kalkulator/?currencyFrom=EUR&currencyTo=PLN&amount="
["\$ Kalkulator walutowy USD"]="https://www.money.pl/pieniadze/kalkulator/?currencyFrom=USD&currencyTo=PLN&amount="
[" YouTube"]="https://www.youtube.com/results?search_query="
[" Wikipedia PL"]="https://pl.wikipedia.org/w/index.php?search="
[" StackOverflow"]="https://stackoverflow.com/search?q="
[" Eneba"]="https://www.eneba.com/pl/store/all?text="
[" Kinguin"]="https://www.kinguin.net/listing?active=1&hideUnavailable=0&type=kinguin?phrase="
[" Instant Gaming"]="https://www.instant-gaming.com/pl/search/?q="
[" Morele"]="https://www.morele.net/wyszukiwarka/?q="
[" X-kom"]="https://www.x-kom.pl/szukaj?q="
[" Komputrnik"]="https://www.komputronik.pl/search/category/1?q="
[" Allegro"]="https://allegro.pl/listing?string="
)
# List for rofi

View File

@@ -1,4 +1,3 @@
# starship with python venv support
{
config,
lib,
@@ -6,13 +5,12 @@
}:
let
accent = "#${config.lib.stylix.colors.base0D}";
background-alt = "#${config.lib.stylix.colors.base01}";
in
{
programs.starship = {
enable = true;
settings = {
add_newline = false;
add_newline = true;
format = lib.concatStrings [
"$nix_shell"
"$hostname"
@@ -20,19 +18,33 @@ in
"$git_branch"
"$git_state"
"$git_status"
"$fill"
"$python"
"\n"
"$nodejs"
"$rust"
"$docker_context"
"$cmd_duration"
"$line_break"
"$character"
];
directory = {
style = accent;
style = "bold fg:dark_blue";
format = "[$path ]($style)";
truncation_length = 3;
truncation_symbol = "/";
truncate_to_repo = false;
substitutions = {
"Documents" = "󰈙";
"Downloads" = " ";
"Music" = " ";
"Pictures" = " ";
};
};
character = {
success_symbol = "[](${accent})";
error_symbol = "[](red)";
vimcmd_symbol = "[](cyan)";
};
nix_shell = {
@@ -42,14 +54,14 @@ in
};
git_branch = {
symbol = "[](${background-alt}) ";
style = "fg:${accent} bg:${background-alt}";
format = "on [$symbol$branch]($style)[](${background-alt}) ";
style = "fg:green";
symbol = " ";
format = "[on](white) [$symbol$branch ]($style)";
};
git_status = {
format = "[[(*$conflicted$untracked$modified$staged$renamed$deleted)](218)($ahead_behind$stashed)]($style)";
style = "cyan";
style = "fg:green";
format = "([$all_status$ahead_behind]($style) )";
conflicted = "";
renamed = "";
deleted = "";
@@ -61,11 +73,44 @@ in
style = "bright-black";
};
fill = {
symbol = " ";
};
python = {
format = " [$symbol($virtualenv)](${accent}) ";
style = "teal";
symbol = " ";
pyenv_version_name = false;
style = "fg:${accent}";
format = "[\${symbol}\${pyenv_prefix}(\${version} )(\($virtualenv\) )]($style)";
pyenv_version_name = true;
pyenv_prefix = "";
};
nodejs = {
style = "blue";
symbol = " ";
};
rust = {
style = "orange";
symbol = " ";
};
docker_context = {
symbol = " ";
style = "fg:#06969A";
format = "[$symbol]($style) $path";
detect_files = [
"docker-compose.yml"
"docker-compose.yaml"
"Dockerfile"
];
detect_extensions = [ "Dockerfile" ];
};
cmd_duration = {
min_time = 500;
style = "fg:gray";
format = "[$duration]($style)";
};
};
};

View File

@@ -1,6 +1,5 @@
{
pkgs,
config,
lib,
...
}:

View File

@@ -4,10 +4,9 @@
...
}:
{
home.packages = with pkgs; [ waybar ];
programs.waybar = {
enable = true;
package = pkgs.waybar;
settings = {
mainBar = {
layer = "top";

View File

@@ -4,10 +4,9 @@
...
}:
{
home.packages = with pkgs; [ waybar ];
programs.waybar = {
enable = true;
package = pkgs.waybar;
settings = {
mainBar = {
layer = "top";

View File

@@ -1,6 +1,5 @@
{
pkgs,
config,
lib,
...
}:

View File

@@ -1,15 +1,77 @@
{ pkgs, ... }:
let
messengerIcon = pkgs.fetchurl {
url = "https://assets.stickpng.com/images/580b57fcd9996e24bc43c526.png";
sha256 = "sha256-mQ7TAsLIWLZhun1DrJFgLkkwpqvWujhGT6Ig8Rf6vbc=";
};
mastodonIcon = pkgs.fetchurl {
url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/d5/Mastodon_logotype_%28simple%29_new_hue.svg/1200px-Mastodon_logotype_%28simple%29_new_hue.svg.png";
sha256 = "sha256-y31Pkl4iExgiM4yZ64t/elA7FYZM1daGQIvYzJdmWhw=";
};
nextcloudIcon = pkgs.fetchurl {
url = "https://cdn.freelogovectors.net/wp-content/uploads/2020/02/nextcloud-logo.png";
sha256 = "sha256-vbe3Jz6oNCUlhK81LGlDDFbo6xpUXiDio40bYqJ4lf4=";
};
chatgptIcon = pkgs.fetchurl {
url = "https://static.vecteezy.com/system/resources/previews/031/110/149/large_2x/chatgpt-logo-transparent-free-png.png";
sha256 = "sha256-ZWmhchblQkksW02eduVrkUSPAlWPGC2fjqxrAGAF5jw=";
};
claudeIcon = pkgs.fetchurl {
url = "https://registry.npmmirror.com/@lobehub/icons-static-png/1.65.0/files/dark/claude-color.png";
sha256 = "sha256-wmYmbmT2/bR4JrnZJu2stjRZm//O5TB9EPE2NQWdGkQ=";
};
in
{
xdg = {
enable = true;
mime.enable = true;
mimeApps = {
enable = true;
};
mimeApps.enable = true;
portal = {
enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-hyprland ];
configPackages = [ pkgs.hyprland ];
};
desktopEntries = {
"messenger" = {
name = "Messenger";
genericName = "Messenger";
exec = "chromium --profile-directory=Default --app=https://www.messenger.com/";
icon = "${messengerIcon}";
terminal = false;
type = "Application";
};
"mastodon" = {
name = "Mastodon";
genericName = "Mastodon";
exec = "chromium --profile-directory=Default --app=https://metalhead.club/";
icon = "${mastodonIcon}";
terminal = false;
type = "Application";
};
"garandcloud" = {
name = "GarandCloud";
genericName = "Nextcloud";
exec = "chromium --profile-directory=Default --app=https://nextcloud.garandplg.com/";
icon = "${nextcloudIcon}";
terminal = false;
type = "Application";
};
"chatgpt" = {
name = "ChatGPT";
genericName = "ChatGPT";
exec = "chromium --profile-directory=Default --app=https://chatgpt.com/";
icon = "${chatgptIcon}";
terminal = false;
type = "Application";
};
"claude" = {
name = "Claude";
genericName = "Claude";
exec = "chromium --profile-directory=Default --app=https://claude.ai/";
icon = "${claudeIcon}";
terminal = false;
type = "Application";
};
};
};
}