1
0
mirror of https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles.git synced 2025-09-15 09:45:58 +03:00

switched from networkmanager to iwd

This commit is contained in:
xnm
2024-10-20 23:32:04 +03:00
parent 114baed3cd
commit 6d5c55aeaa
5 changed files with 53 additions and 19 deletions

View File

@@ -7,27 +7,27 @@ function airplane_mode_toggle
set -l bluetooth_status (cat $backup_file | grep -o 'bluetooth:\(on\|off\)$' | cut -d':' -f2)
# Restore network states
if test "$wifi_status" = "on"
nmcli radio wifi on
# else
# nmcli radio wifi off
if test "$wifi_status" = on
rfkill unblock wifi
# else
# rfkill block wifi
end
if test "$bluetooth_status" = "on"
if test "$bluetooth_status" = on
rfkill unblock bluetooth
# else
# rfkill block bluetooth
# else
# rfkill block bluetooth
end
# Remove the backup file
rm $backup_file
else
# Backup the current network states and turn off all networks
echo "wifi:$(rfkill list wifi | grep -q "Soft blocked: no" && echo "on" || echo "off")" > $backup_file
echo "bluetooth:$(rfkill list bluetooth | grep -qi "Soft blocked: no" && echo "on" || echo "off")" >> $backup_file
echo "wifi:$(rfkill list wifi | grep -q "Soft blocked: no" && echo "on" || echo "off")" >$backup_file
echo "bluetooth:$(rfkill list bluetooth | grep -qi "Soft blocked: no" && echo "on" || echo "off")" >>$backup_file
# Add more lines to backup other network types if needed
nmcli radio wifi off
rfkill block wifi
rfkill block bluetooth
end
end

View File

@@ -1,11 +1,11 @@
function wifi_toggle
set wifi_status (nmcli radio wifi)
set wifi_status (rfkill list wifi | grep -i -o "Soft blocked: yes")
set backup_file ~/.cache/airplane_backup
if [ "$wifi_status" = enabled ]
nmcli radio wifi off
if [ -z "$wifi_status" ]
rfkill block wifi
else
nmcli radio wifi on
rfkill unblock wifi
if test -e $backup_file
rm $backup_file
end

View File

@@ -162,7 +162,7 @@
// "tooltip-format-ethernet":"Interface: {ifname}\nIP: {ipaddr}\nGW: {gwaddr}\nNetmask: {netmask}\nCIDR: {cidr}\n\n<span color='#a6da95'>{bandwidthUpBits}</span>\t<span color='#ee99a0'>{bandwidthDownBits}</span>\t<span color='#c6a0f6'>󰹹{bandwidthTotalBits}</span>",
"max-length": 35,
"on-click": "fish -c wifi_toggle",
"on-click-right": "wezterm start nmtui",
"on-click-right": "iwgtk",
},
"group/misc": {

View File

@@ -3,16 +3,29 @@
{
# Enable Encrypted DNS
networking = {
nameservers = [ "127.0.0.1" "::1" ];
nameservers = [ "127.0.0.1" "[::1]" ];
# If using dhcpcd:
dhcpcd.enable = false; # disable, because enabled by default
dhcpcd.extraConfig = "nohook resolv.conf";
# If using NetworkManager:
networkmanager.dns = "none";
# If using resolvconf:
resolvconf = {
enable = false; # FIXME remember to delete /etc/resolv.conf after applying this config
useLocalResolver = true;
};
# If using iwd:
wireless.iwd.settings.Network.NameResolvingService = "none";
};
services.dnscrypt-proxy2 = {
enable = true;
settings = {
listen_addresses = [ "127.0.0.1:53" "[::1]:53" ];
ipv6_servers = true;
require_dnssec = true;

View File

@@ -1,13 +1,34 @@
{ ... }:
{ pkgs, ... }:
{
# Enable networking
networking.hostName = "isitreal-laptop"; # Define your hostname.
# Pick only one of the below networking options.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
# networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
# networking.networkmanager.wifi.backend = "iwd";
networking.wireless.iwd = {
enable = true;
settings = {
General = {
EnableNetworkConfiguration = true;
};
Network = {
EnableIPv6 = true;
};
Scan = {
DisablePeriodicScan = true;
};
};
};
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
environment.systemPackages = with pkgs; [
iwgtk
impala
];
}