system: update
This commit is contained in:
@@ -2,14 +2,14 @@
|
||||
networking = {
|
||||
enableIPv6 = true;
|
||||
useDHCP = false;
|
||||
nameservers = [ "193.222.99.172" "1.1.1.1" ];
|
||||
nameservers = [ "64.188.64.176" "1.1.1.1" ];
|
||||
|
||||
dhcpcd.extraConfig = "nohook resolv.conf";
|
||||
|
||||
networkmanager = {
|
||||
enable = true;
|
||||
dns = "none";
|
||||
insertNameservers = [ "193.222.99.172" "1.1.1.1" ];
|
||||
insertNameservers = [ "64.188.64.176" "1.1.1.1" ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
let
|
||||
sol = pkgs.writers.writePython3 "shutdown-on-lan.py" {
|
||||
libraries = [ pkgs.python312Packages.psutil ];
|
||||
flakeIgnore = [ "E501" "E302" "E305" ];
|
||||
flakeIgnore = [ "E302" "E305" "E501" "E701" ];
|
||||
} /*py*/ ''
|
||||
# https://habr.com/ru/articles/816765/
|
||||
|
||||
@@ -21,20 +21,26 @@
|
||||
ip_addr = mac_addr = None
|
||||
|
||||
while not ip_addr or not mac_addr or ip_addr == '127.0.0.1':
|
||||
net = psutil.net_if_addrs()
|
||||
for item in net[list(net.keys())[-1]]:
|
||||
addr = item.address
|
||||
# В IPv4-адресах разделители - точки
|
||||
if '.' in addr:
|
||||
ip_addr = addr
|
||||
# В MAC-адресах разделители либо тире, либо одинарное двоеточие.
|
||||
# Двойное двоеточие - это разделители для адресов IPv6
|
||||
elif ('-' in addr or ':' in addr) and '::' not in addr:
|
||||
# Приводим MAC-адрес к одному формату. Формат может меняться в зависимости от ОС
|
||||
mac_addr = addr.replace(':', '-').upper()
|
||||
nets = psutil.net_if_addrs()
|
||||
for net in list(nets.keys())[::-1]:
|
||||
if net in ('lo', 'tun0'): continue
|
||||
logger.debug(str(net))
|
||||
for item in nets[net]:
|
||||
# logger.debug(str(item))
|
||||
addr = item.address
|
||||
logger.debug(addr)
|
||||
# В IPv4-адресах разделители - точки
|
||||
if '.' in addr:
|
||||
ip_addr = addr
|
||||
# В MAC-адресах разделители либо тире, либо одинарное двоеточие.
|
||||
# Двойное двоеточие - это разделители для адресов IPv6
|
||||
elif ('-' in addr or ':' in addr) and '::' not in addr:
|
||||
# Приводим MAC-адрес к одному формату. Формат может меняться в зависимости от ОС
|
||||
mac_addr = addr.replace(':', '-').upper()
|
||||
if not ip_addr or not mac_addr or ip_addr == '127.0.0.1':
|
||||
logger.debug('Не удалось получить IP или MAC-адрес сетевого интерфейса')
|
||||
logger.error('Не удалось получить IP или MAC-адрес сетевого интерфейса')
|
||||
sleep(10)
|
||||
logger.debug(mac_addr)
|
||||
return ip_addr, mac_addr
|
||||
|
||||
def assemble_wol_packet(mac_address: str) -> str:
|
||||
|
||||
@@ -19,8 +19,8 @@
|
||||
environment.etc = {
|
||||
"v2raya/ru_geoip.dat".source = pkgs.fetchurl {
|
||||
name = "geoip.dat";
|
||||
url = "https://github.com/runetfreedom/russia-blocked-geoip/releases/download/202505050926/geoip.dat";
|
||||
hash = "sha256-vn7cZigqaHY8ncmWJXik8K7ri6JvEoma4sCp6mG3N0U=";
|
||||
url = "https://github.com/runetfreedom/russia-blocked-geoip/releases/download/202508140928/geoip.dat";
|
||||
hash = "sha256-5yzkVmNnC3PKCFB1hlP5bO2KD30NzKBtYGQe2fU5QDw=";
|
||||
};
|
||||
|
||||
"v2raya/bolt.db".source = config.sops.secrets.vpn_bolt.path;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ config, pkgs, ... }: let
|
||||
icon = pkgs.fetchurl {
|
||||
url = "https://preview.redd.it/a2nga4jvjy291.png?width=640&crop=smart&auto=webp&s=7d1458b41101c960bc13c28a6b92c5a6ddc20210";
|
||||
name = "nixos-chan.png";
|
||||
sha256 = "sha256-dAms/+CgYrao2b8omXEdS/HnjGUa++ol5jjpvej39Og=";
|
||||
url = "https://cloud.codrs.ru/pub/nixos-chan.webp?raw";
|
||||
name = "nixos-chan.webp";
|
||||
sha256 = "sha256-0majB9ljjMdZwvOijEgWdFKxWLje5tHgXHBJUWZfHfY=";
|
||||
};
|
||||
in {
|
||||
home.packages = [ pkgs.neofetch ];
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
{ pkgs-stable, ... }: {
|
||||
home.packages = with pkgs-stable; [
|
||||
vscode
|
||||
jetbrains.pycharm-community
|
||||
{ pkgs, ... }: {
|
||||
home.packages = with pkgs; [
|
||||
jetbrains.idea-community
|
||||
android-studio
|
||||
];
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ pkgs, inputs, pkgs-fixed, ... }: {
|
||||
home.packages = with pkgs; [
|
||||
google-chrome
|
||||
inputs.ayugram-desktop.packages.${pkgs.system}.ayugram-desktop
|
||||
ayugram-desktop
|
||||
vesktop
|
||||
obs-studio
|
||||
mpv
|
||||
|
||||
@@ -20,5 +20,6 @@
|
||||
dig
|
||||
mtr
|
||||
imagemagick
|
||||
wl-clipboard
|
||||
];
|
||||
}
|
||||
|
||||
@@ -4,9 +4,6 @@
|
||||
pamixer
|
||||
wofi
|
||||
clipse
|
||||
grimblast
|
||||
wl-clipboard
|
||||
cliphist
|
||||
];
|
||||
|
||||
wayland.windowManager.hyprland =
|
||||
@@ -59,15 +56,6 @@
|
||||
finally:
|
||||
system(f"${lib.getExe pkgs.swww} img {folder}/{filename} ${swww_flags}")
|
||||
'';
|
||||
|
||||
clipsync = pkgs.writers.writeBash "clipsync" ''
|
||||
while ${lib.getExe pkgs.clipnotify}; do
|
||||
${lib.getExe pkgs.xclip} -q -sel clip -t image/png -o > /dev/null && \
|
||||
${lib.getExe pkgs.xclip} -sel clip -t image/png -o | wl-copy
|
||||
${lib.getExe pkgs.xclip} -q -sel clip -o > /dev/null && \
|
||||
${lib.getExe pkgs.xclip} -sel clip -o | wl-copy
|
||||
done
|
||||
'';
|
||||
in {
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
@@ -140,7 +128,6 @@
|
||||
"systemctl --user start plasma-polkit-agent"
|
||||
"${lib.getExe' pkgs.swww "swww-daemon"}"
|
||||
"${lib.getExe wallpaper_changer}"
|
||||
"${clipsync}"
|
||||
"clipse -listen"
|
||||
"${lib.getExe' pkgs.udiskie "udiskie"}"
|
||||
];
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
yazi-plugins = pkgs.fetchFromGitHub {
|
||||
owner = "yazi-rs";
|
||||
repo = "plugins";
|
||||
rev = "864a0210d9ba1e8eb925160c2e2a25342031d8d3";
|
||||
hash = "sha256-m3709h7/AHJAtoJ3ebDA40c77D+5dCycpecprjVqj/k=";
|
||||
rev = "e95c7b384e7b0a9793fe1471f0f8f7810ef2a7ed";
|
||||
hash = "sha256-TUS+yXxBOt6tL/zz10k4ezot8IgVg0/2BbS8wPs9KcE=";
|
||||
};
|
||||
starship = pkgs.fetchFromGitHub {
|
||||
owner = "Rolv-Apneseth";
|
||||
repo = "starship.yazi";
|
||||
rev = "6fde3b2d9dc9a12c14588eb85cf4964e619842e6";
|
||||
sha256 = "sha256-+CSdghcIl50z0MXmFwbJ0koIkWIksm3XxYvTAwoRlDY=";
|
||||
rev = "a63550b2f91f0553cc545fd8081a03810bc41bc0";
|
||||
sha256 = "sha256-PYeR6fiWDbUMpJbTFSkM57FzmCbsB4W4IXXe25wLncg=";
|
||||
};
|
||||
in {
|
||||
programs.yazi = {
|
||||
|
||||
Reference in New Issue
Block a user