Compare commits

..

No commits in common. "c04b76f2e0733f0ce15125e1c87377a4b5cdd50a" and "7336cae5b44215dffd97fb719caa60b482d6364c" have entirely different histories.

25 changed files with 88 additions and 317 deletions

107
flake.lock generated
View file

@ -178,11 +178,11 @@
]
},
"locked": {
"lastModified": 1781152676,
"narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=",
"lastModified": 1780894562,
"narHash": "sha256-c3430xwxwhHipl3jigUGMMBfpaMylDqytW/kdmB3ZGs=",
"owner": "nix-community",
"repo": "disko",
"rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1",
"rev": "24fed06cac83bcc44ac8efbb57cab1a82fa0bedc",
"type": "github"
},
"original": {
@ -457,11 +457,11 @@
]
},
"locked": {
"lastModified": 1781981105,
"narHash": "sha256-/1nNBbA7PrSQpTc9Qazkhl4kIPg+TNl0CjxS3UQJKlw=",
"lastModified": 1780883961,
"narHash": "sha256-WU6SUrESuPiEXEUvX4D51AgWrXRJty+sLJBwBaDBGqE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "7bfff44b465909f69a442701293bc0badcf476dc",
"rev": "4eb4fec41674d5b059aa2eedf0f98453890546fa",
"type": "github"
},
"original": {
@ -552,22 +552,6 @@
"url": "https://git.lelgenio.com/lelgenio/made-you-look"
}
},
"netlinkrb": {
"flake": false,
"locked": {
"lastModified": 1562850306,
"narHash": "sha256-0bXTWUdUDr2XP+bEIfIbxXap8Niva/IoPXTxFeXXImg=",
"owner": "vpsfreecz",
"repo": "netlinkrb",
"rev": "d9de53d843d2586ffa5b7b404887fa801c697ddf",
"type": "github"
},
"original": {
"owner": "vpsfreecz",
"repo": "netlinkrb",
"type": "github"
}
},
"nix-index-database": {
"inputs": {
"nixpkgs": [
@ -575,11 +559,11 @@
]
},
"locked": {
"lastModified": 1782636943,
"narHash": "sha256-ripjZa7BBLwL1uS5VJF3s/VpZpWt5ZIQEvkJ/FJNpQw=",
"lastModified": 1780816331,
"narHash": "sha256-0BYqs8yKWkOz2Q7+SP18N5E5gmDKSo6LSxIVIa0wWes=",
"owner": "Mic92",
"repo": "nix-index-database",
"rev": "058b1f9381fa79fcda49982370a750ff92dbba43",
"rev": "1a2ea89c917781e88508d9fd2b507f2d2a0e173c",
"type": "github"
},
"original": {
@ -598,11 +582,11 @@
]
},
"locked": {
"lastModified": 1781301671,
"narHash": "sha256-rq6WOopxq3U2AGEWO80o9LIJDYcYIdgw6jyl+y+19w8=",
"lastModified": 1780704867,
"narHash": "sha256-JuatomIQeXXZhdfEnBid9VoWyh6IfQgTE/FsM94UsRk=",
"owner": "simple-nixos-mailserver",
"repo": "nixos-mailserver",
"rev": "661ec59a97ccee13a63f79280b282eb6f7d3f817",
"rev": "da29f6cc3d7e15eb7bfdae599918851cbd5ea142",
"type": "gitlab"
},
"original": {
@ -630,11 +614,12 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1782467914,
"narHash": "sha256-inDx/w70OSJoJPqtKh0BrzAsbZZhpya7YgS43jHnhwg=",
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4",
"type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1022855.e73de5be04e0/nixexprs.tar.xz"
"lastModified": 1780749050,
"narHash": "sha256-3av0pIjlOWQ6rDbNOmpUSvbNnJkGORQKKjb4LtCZsIY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a799d3e3886da994fa307f817a6bc705ae538eeb",
"type": "github"
},
"original": {
"id": "nixpkgs",
@ -644,11 +629,11 @@
},
"nixpkgsUnstable": {
"locked": {
"lastModified": 1782467914,
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
"lastModified": 1780749050,
"narHash": "sha256-3av0pIjlOWQ6rDbNOmpUSvbNnJkGORQKKjb4LtCZsIY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4",
"rev": "a799d3e3886da994fa307f817a6bc705ae538eeb",
"type": "github"
},
"original": {
@ -722,11 +707,12 @@
},
"nixpkgs_5": {
"locked": {
"lastModified": 1782535326,
"narHash": "sha256-r4TA57SL7nvj1R+GY/FCLwFU48w9IixTQlzBTIYkt8E=",
"rev": "714a5f8c4ead6b31148d829288440ed033ccc041",
"type": "tarball",
"url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.3494.714a5f8c4ead/nixexprs.tar.xz"
"lastModified": 1780902259,
"narHash": "sha256-q8yYEC5f1mFlQO9RGna4LTc9QrcvWunX6FYp83munkQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "bd0ff2d3eac24699c3664d5966b9ef36f388e2ca",
"type": "github"
},
"original": {
"id": "nixpkgs",
@ -768,11 +754,11 @@
},
"nixpkgs_8": {
"locked": {
"lastModified": 1782375420,
"narHash": "sha256-wiPYmEuHbJvleW489n6+lamL7JSJg3pcKUYwURU9CkI=",
"lastModified": 1780734595,
"narHash": "sha256-DmTfP92QFYRLOGXlMIE54MAgxSJjDWocl3gRNOu72Os=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "4062d36ebeae843c750011eef6b61ec9a9dbc9a9",
"rev": "9b696460ac78b5ccfc17c854d8c976f20456e943",
"type": "github"
},
"original": {
@ -858,23 +844,6 @@
"youre-wrong": "youre-wrong"
}
},
"ruby-lxc": {
"flake": false,
"locked": {
"lastModified": 1780499941,
"narHash": "sha256-guAdOSP9MyCL3BQ1LGXAhcCoXgEU1fUE69d2ATMqUGE=",
"owner": "vpsfreecz",
"repo": "ruby-lxc",
"rev": "004bf35eb90d41ba60b347b5b1e73d868a4f95d9",
"type": "github"
},
"original": {
"owner": "vpsfreecz",
"ref": "2026-06-03-nixos-26-05-port",
"repo": "ruby-lxc",
"type": "github"
}
},
"rust-analyzer-src": {
"flake": false,
"locked": {
@ -926,11 +895,11 @@
]
},
"locked": {
"lastModified": 1782165805,
"narHash": "sha256-478kKQBvK6SYTOdN2h9jhKJv94nbXRbFMfuL1WshErg=",
"lastModified": 1780547341,
"narHash": "sha256-Gq8KNx5A7hBB3uGJaj6eQfLDIz5YdLu92gqBcvHvoUo=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "56b24064fdcaedca53553b1a6d607fd23b613a24",
"rev": "9ed65852b6257fbeae4355bc24ecfea307ca759a",
"type": "github"
},
"original": {
@ -1087,17 +1056,15 @@
"vpsadminos": {
"inputs": {
"impermanence": "impermanence",
"netlinkrb": "netlinkrb",
"nixpkgs": "nixpkgs_8",
"nixpkgsUnstable": "nixpkgsUnstable",
"ruby-lxc": "ruby-lxc"
"nixpkgsUnstable": "nixpkgsUnstable"
},
"locked": {
"lastModified": 1782540463,
"narHash": "sha256-OpSw3D1naT34lbIcRSykz2T7JY66ZduL56qfxEoRdXQ=",
"lastModified": 1780902784,
"narHash": "sha256-xqY+ApLpKx8/sVGx6a6Tt1NUqU8FPaNlitR3R396HFo=",
"owner": "vpsfreecz",
"repo": "vpsadminos",
"rev": "503684bcfbe3e9be442ce5282cdbb22e250b225c",
"rev": "a791e6b372bb0fb6c9ffd65383517c140f510f8b",
"type": "github"
},
"original": {

View file

@ -5,10 +5,6 @@
rec {
caffeinated = pkgs.callPackage ./caffeinated { };
cargo-checkmate = pkgs.callPackage ./cargo-checkmate.nix { };
lumactl = pkgs.callPackage ./lumactl.nix {
wmctl = pkgs.callPackage ./wmctl.nix { };
};
wmctl = pkgs.callPackage ./wmctl.nix { };
lipsum = pkgs.callPackage ./lipsum.nix { };
emmet-cli = pkgs.callPackage ./emmet-cli.nix { };
material-wifi-icons = pkgs.callPackage ./material-wifi-icons.nix { };

View file

@ -1,54 +0,0 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
systemd,
libxkbcommon,
wayland,
wayland-scanner,
libffi,
wmctl,
makeWrapper,
}:
rustPlatform.buildRustPackage rec {
pname = "lumactl";
version = "0.1.0";
src = fetchFromGitHub {
owner = "danyspin97";
repo = pname;
rev = "89e273e25afe545e3bcaf282b84a63e3c34117de";
hash = "sha256-PQucBe3xPjjzuiaukdf2f/CvTqbGm0wJMbdpgd2ubnU=";
};
cargoHash = "sha256-RvC8wDCY22dBrUcl6VjrwMHwTTSSoBzLwnghAOAUoYU=";
nativeBuildInputs = [
pkg-config
wayland-scanner
makeWrapper
];
buildInputs = [
systemd
libxkbcommon
wayland
libffi
wmctl
];
postFixup = ''
wrapProgram $out/bin/lumactl \
--prefix PATH : ${lib.makeBinPath [ wmctl ]}
'';
meta = with lib; {
description = "CLI utility for controlling display brightness on Linux";
homepage = "https://github.com/danyspin97/lumactl";
license = licenses.gpl3Plus;
mainProgram = "lumactl";
platforms = platforms.linux;
maintainers = with maintainers; [ lelgenio ];
};
}

View file

@ -1,43 +0,0 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
libxkbcommon,
wayland,
wayland-scanner,
libffi,
}:
rustPlatform.buildRustPackage rec {
pname = "wmctl";
version = "0.1.0";
src = fetchFromGitHub {
owner = "danyspin97";
repo = pname;
rev = "398d87945ab6c4b31e04063098c79d1e456afdcc";
hash = "sha256-J3ZHq51uDgPMcQbJzEflReDnm1AqPs7Hov3jpCDlNHU=";
};
cargoHash = "sha256-T7FdevuBLbrYE5vTuBincSRMDOLkUsoKx/jg0i1Ybdo=";
nativeBuildInputs = [
pkg-config
wayland-scanner
];
buildInputs = [
libxkbcommon
wayland
libffi
];
meta = with lib; {
description = "CLI for controlling Wayland compositors";
homepage = "https://github.com/danyspin97/wmctl";
license = licenses.gpl3Plus;
mainProgram = "wmctl";
platforms = platforms.linux;
maintainers = with maintainers; [ lelgenio ];
};
}

View file

@ -146,13 +146,6 @@
xorg.setxkbmap
jq
];
kde-sync-xkbmap = [
xorg.setxkbmap
dbus
gnugrep
gnused
gawk
];
print-battery-icon = [ ];
controller-battery = [ print-battery-icon ];
mouse-battery = [ print-battery-icon ];

View file

@ -1,51 +0,0 @@
#!/bin/sh
set -euo pipefail
get_layout_display_name() {
idx="$1"
dbus-send --session --print-reply --dest=org.kde.keyboard /Layouts org.kde.KeyboardLayouts.getLayoutsList 2>/dev/null \
| grep 'string "' \
| sed 's/.*string "\([^"]*\)".*/\1/' \
| awk -v idx="$idx" 'NR%3==0 { if (c++ == idx) { print; exit } }'
}
get_layout_index() {
dbus-send --session --print-reply --dest=org.kde.keyboard /Layouts org.kde.KeyboardLayouts.getLayout 2>/dev/null \
| awk '/uint32/ { print $2; exit }'
}
LAST_LAYOUT=""
apply_layout() {
idx="$1"
CURRENT_LAYOUT=$(get_layout_display_name "$idx")
if test "$LAST_LAYOUT" = "$CURRENT_LAYOUT"; then
return 0
elif test "$CURRENT_LAYOUT" = "English (Colemak)"; then
echo "Setting layout to colemak"
setxkbmap us colemak
elif test "$CURRENT_LAYOUT" = "Portuguese (Brazil)"; then
echo "Setting layout to br"
setxkbmap br
fi
LAST_LAYOUT="$CURRENT_LAYOUT"
}
update_layout() {
INDEX=$(get_layout_index)
apply_layout "$INDEX"
}
while ! get_layout_index; do
sleep 1s
done
update_layout
dbus-monitor --session \
"type='signal',interface='org.kde.KeyboardLayouts',member='layoutChanged',path='/Layouts'" \
| while read -r line; do
update_layout
done

View file

@ -26,10 +26,10 @@
gamescope
# gamescope compatibility??
libxcursor
libxi
libxinerama
libxscrnsaver
xorg.libXcursor
xorg.libXi
xorg.libXinerama
xorg.libXScrnSaver
libpng
libpulseaudio
libvorbis

View file

@ -25,9 +25,6 @@ in
# Enable the X11 windowing system.
services.xserver.enable = false;
# Enable external monitor configuration (brightness)
hardware.i2c.enable = true;
# enable sway window manager
programs.sway = {
enable = true;

View file

@ -20,7 +20,6 @@
environment.systemPackages = with pkgs; [
kdePackages.partitionmanager
kdePackages.sddm-kcm
];
};
}

View file

@ -7,7 +7,7 @@
{
programs.thunar = {
enable = true;
plugins = with pkgs; [
plugins = with pkgs.xfce; [
thunar-archive-plugin
thunar-volman
];

View file

@ -22,7 +22,6 @@
"input"
"libvirtd"
"kvm"
"i2c"
];
shell = pkgs.fish;
openssh.authorizedKeys.keys = [

View file

@ -2,6 +2,7 @@
{
projectRootFile = "flake.nix";
programs.nixfmt.enable = true;
programs.nixfmt.package = pkgs.nixfmt-rfc-style;
settings.on-unmatched = "debug";
}

View file

@ -1,12 +1,10 @@
{
config,
pkgs,
lib,
...
}:
let
inherit (config.my) theme desktop;
inherit (theme) color;
inherit (config.my.theme) color;
bugfixedFirefox = pkgs.firefox-devedition-unwrapped // {
requireSigning = false;
@ -17,7 +15,6 @@ in
config = {
programs.firefox = {
enable = true;
configPath = ".mozilla/firefox";
package = pkgs.wrapFirefox bugfixedFirefox {
nixExtensions = [
(pkgs.fetchFirefoxAddon {
@ -136,7 +133,7 @@ in
"devtools.chrome.enabled" = true;
"devtools.debugger.remote-enabled" = true;
};
userChrome = lib.optionalString (color.type == "dark" && desktop == "sway") ''
userChrome = ''
#sidebar-main {
background-color: ${color.bg};
}

View file

@ -17,10 +17,10 @@ function fish_mode_prompt;end
function _fish_prompt_color -a color
# separate line needed for bold normal
set_color "$color"
set_color $color
set_color --bold
set -e argv[1]
echo -en "$argv"
echo -en $argv
end
alias _fish_prompt_warn "_fish_prompt_color 'yellow'"
@ -34,7 +34,7 @@ alias _fish_prompt_accent "_fish_prompt_color '$__accent_color'"
############################################################
function _fish_prompt_git_status -a git_status_s code symbol color
echo "$git_status_s" | string match -qr "^$code"
echo $git_status_s | string match -qr "^$code"
and _fish_prompt_color "$color" "$symbol"
end
@ -148,7 +148,7 @@ function fish_git_prompt
if test -n "$git_log_unpushed"
and not string match -qr "$git_branch" "$git_log_unpushed"
_fish_prompt_normal '↻'
_fish_prompt_warn "$git_log_unpushed[1]"
_fish_prompt_warn $git_log_unpushed[1]
end
end
@ -182,14 +182,14 @@ function fish_program_time_prompt_print -a diff
set -l unit secs
if test "$diff" -gt 60
if test $diff -gt 60
set unit "mins"
set diff (math "$diff" / 60)
set diff (math $diff / 60)
end
if test "$diff" -gt 60
if test $diff -gt 60
set unit "hours"
set diff (math "$diff" / 60)
set diff (math $diff / 60)
end
if test "$diff" -gt 1
@ -198,7 +198,7 @@ function fish_program_time_prompt_print -a diff
# force formatting as 0.1 instead of 0,1
env LC_ALL=C printf "%.02f" "$diff"
)
_fish_prompt_normal "$unit"
_fish_prompt_normal $unit
end
end
@ -208,9 +208,9 @@ function fish_program_time_prompt
return
end
set -l difference (math "$__fish_prompt_last_command_end" - "$__fish_prompt_last_command_start")
set -l difference (math $__fish_prompt_last_command_end - $__fish_prompt_last_command_start)
fish_program_time_prompt_print "$difference"
fish_program_time_prompt_print $difference
set -eg __fish_prompt_last_command_start
set -eg __fish_prompt_last_command_end
@ -223,13 +223,13 @@ end
function fish_vimode_prompt # Not fish_mode_prompt!
if not test "$fish_key_bindings" = fish_vi_key_bindings
if not test $fish_key_bindings = fish_vi_key_bindings
printf '\e[5 q' # Bar
return
end
# Set cursor shape
if test "$fish_bind_mode" = insert
if test $fish_bind_mode = insert
printf '\e[5 q' # Bar
else
printf '\e[1 q' # Block
@ -238,13 +238,13 @@ function fish_vimode_prompt # Not fish_mode_prompt!
# Print mode symbol, N for normal, I for insert, etc...
# on most cases first letter of mode name
_fish_prompt_accent (
switch "$fish_bind_mode"
switch $fish_bind_mode
case replace_one
printf 'o'
case default
printf 'n'
case '*'
printf (string match -r '^.' "$fish_bind_mode" )
printf (string match -r '^.' $fish_bind_mode )
end | string upper
)' '
end
@ -256,9 +256,9 @@ end
function fish_prompt
# Save current status as it may be overwritten before usage
set _status "$status"
set _status $status
_fish_prompt_accent "$USER"
_fish_prompt_accent $USER
_fish_prompt_normal " in "
_fish_prompt_accent (prompt_pwd)
@ -281,11 +281,11 @@ function fish_prompt
fish_vimode_prompt
if test "$_status" -ne 0
if test $_status -ne 0
_fish_prompt_warn "$_status "
end
if test "$USER" = root
if test $USER = root
_fish_prompt_normal '# '
else
_fish_prompt_normal '$ '

View file

@ -53,7 +53,7 @@
];
my = import ./variables.nix // {
sway.enable = config.my.desktop == "sway";
# sway.enable = true;
pass.enable = true;
fish.enable = true;
};
@ -100,7 +100,7 @@
python3Packages.python-slugify
par
engrampa
mate.engrampa
# gnome.nautilus
## Theming
@ -134,7 +134,7 @@
rust-analyzer # rust analyzer
unstable.blade-formatter
nixfmt
nixfmt-rfc-style
nix-output-monitor
];

View file

@ -77,8 +77,8 @@ with colors;
head /dev/urandom |
base64 |
rg --text -o "${color.random_range}" |
tr -d '\n' |
head -c 6
head -n 6 |
sd '\n' ""
}
face global StatusLineMode StatusLine
face global StatusLineInfo StatusLine

View file

@ -10,12 +10,10 @@ with pkgs.tree-sitter-grammars;
acc: name: vals:
acc
+ ''
[grammar.${name}.source.local]
[language.${name}.grammar.source.local]
path = "${vals.parser}"
[language.${name}.queries.source.local]
path = "${vals.queries}"
[language.${name}.queries]
path = "${vals.queries}"
''

View file

@ -4,9 +4,6 @@
config,
...
}:
{
imports = [ ./kde/kde-sync-xkbmap.nix ];
}
// lib.mkIf (config.my.desktop == "kde") {
lib.mkIf (config.my.desktop == "kde") {
services.gpg-agent.pinentry.package = lib.mkForce pkgs.pinentry-qt;
}

View file

@ -1,22 +0,0 @@
{
config,
pkgs,
lib,
...
}:
lib.mkIf (config.my.desktop == "kde") {
systemd.user.services.kde-sync-xkbmap = {
Unit = {
Description = "Sync xkbmap with KDE keyboard layout";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
};
Service = {
ExecStart = lib.getExe pkgs.kde-sync-xkbmap;
Restart = "on-failure";
};
Install = {
WantedBy = [ "plasma-workspace.target" ];
};
};
}

View file

@ -17,8 +17,6 @@
cache-pause-wait = 10;
hwdec = "auto";
ao = "pulse,";
};
scripts = with pkgs.mpvScripts; [
mpris

View file

@ -3,16 +3,16 @@
programs.ssh = {
enable = true;
enableDefaultConfig = false;
settings = {
matchBlocks = {
monolith = {
User = "lelgenio";
HostName = "monolith.lelgenio.com";
Port = 9022;
user = "lelgenio";
hostname = "monolith.lelgenio.com";
port = 9022;
};
phantom = {
User = "root";
HostName = "phantom.lelgenio.com";
Port = 9022;
user = "root";
hostname = "phantom.lelgenio.com";
port = 9022;
};
};
includes = [ "~/Wopus/.ssh.config" ];

View file

@ -80,15 +80,15 @@ in
bg = "${theme.background} fill";
};
"AOC 24G2W1G4 ATNM6XA004804" = {
position = "1080,260";
position = "0,0";
adaptive_sync = "on";
mode = "1920x1080@144.000Hz";
};
"LG Electronics LG FULL HD 0x00019147" = {
position = "0,0";
transform = "90";
"LG Electronics 25UM58G 0x01010101" = {
position = "1920,215";
adaptive_sync = "on";
mode = "1920x1080@74.973Hz";
scale = "1.2";
mode = "2560x1080@74.991Hz";
};
};
fonts = {
@ -155,8 +155,7 @@ in
wdmenu
wlauncher
volumesh
wmctl
lumactl
brightnessctl
showkeys
pamixer
libnotify

View file

@ -160,8 +160,8 @@ let
};
screen_binds = {
"XF86MonBrightnessDown" = "exec lumactl set -- -5%";
"XF86MonBrightnessUp" = "exec lumactl set -- +5%";
"XF86MonBrightnessDown" = "exec brightnessctl --min-value=1 set 5%-";
"XF86MonBrightnessUp" = "exec brightnessctl --min-value=1 set 5%+";
"${mod}+l" = "exec ${lib.getExe _lock}";
};

View file

@ -1,8 +1,9 @@
{ pkgs, config, ... }:
{
programs.vscodium = {
programs.vscode = {
enable = true;
package = pkgs.vscodium;
profiles.default.extensions = with pkgs.vscode-extensions; [
jnoortheen.nix-ide
github.github-vscode-theme

View file

@ -10,7 +10,6 @@ in
userDirs = {
enable = true;
createDirectories = true;
setSessionVariables = true;
desktop = "${HOME}/Área de trabalho";
documents = "${HOME}/Documentos";