Compare commits
No commits in common. "e9371a503eae738080f5b569049f17f9c7441829" and "57778b83d492496c7f5eeb3409a3fede5304f9d7" have entirely different histories.
e9371a503e
...
57778b83d4
3 changed files with 25 additions and 113 deletions
|
|
@ -17,7 +17,6 @@
|
||||||
settings = {
|
settings = {
|
||||||
General = {
|
General = {
|
||||||
Experimental = true; # Show battery charge of Bluetooth devices
|
Experimental = true; # Show battery charge of Bluetooth devices
|
||||||
MultiProfile = "multiple";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -48,7 +47,6 @@
|
||||||
requires = [ "tailscaled.service" ];
|
requires = [ "tailscaled.service" ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig.Type = "oneshot";
|
serviceConfig.Type = "oneshot";
|
||||||
serviceConfig.RemainAfterExit = true;
|
|
||||||
path = [ pkgs.tailscale ];
|
path = [ pkgs.tailscale ];
|
||||||
script = ''
|
script = ''
|
||||||
tailscale set --operator=jet
|
tailscale set --operator=jet
|
||||||
|
|
@ -68,30 +66,14 @@
|
||||||
"tailscale-set-operator.service"
|
"tailscale-set-operator.service"
|
||||||
];
|
];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
path = [
|
|
||||||
pkgs.tailscale
|
|
||||||
pkgs.coreutils
|
|
||||||
pkgs.gnugrep
|
|
||||||
];
|
|
||||||
preStart = ''
|
|
||||||
for attempt in {1..60}; do
|
|
||||||
if tailscale status --json --peers=false | grep -q '"BackendState": *"Running"'; then
|
|
||||||
tailscale serve --bg 4096
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
sleep 1
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "Timed out waiting for Tailscale to reach Running state"
|
|
||||||
exit 1
|
|
||||||
'';
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
User = "jet";
|
User = "jet";
|
||||||
Restart = "always";
|
Restart = "always";
|
||||||
RestartSec = 5;
|
RestartSec = 5;
|
||||||
TimeoutStartSec = 75;
|
ExecStartPre = [
|
||||||
|
"${pkgs.tailscale}/bin/tailscale serve --bg 4096"
|
||||||
|
];
|
||||||
ExecStart = "/etc/profiles/per-user/jet/bin/opencode serve --hostname 127.0.0.1 --port 4096";
|
ExecStart = "/etc/profiles/per-user/jet/bin/opencode serve --hostname 127.0.0.1 --port 4096";
|
||||||
WorkingDirectory = config.users.users.jet.home;
|
WorkingDirectory = config.users.users.jet.home;
|
||||||
};
|
};
|
||||||
|
|
@ -288,24 +270,6 @@
|
||||||
alsa.enable = true;
|
alsa.enable = true;
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
wireplumber.extraConfig."10-bluez" = {
|
|
||||||
"monitor.bluez.properties" = {
|
|
||||||
"bluez5.roles" = [
|
|
||||||
"a2dp_sink"
|
|
||||||
"a2dp_source"
|
|
||||||
"hsp_hs"
|
|
||||||
"hsp_ag"
|
|
||||||
"hfp_hf"
|
|
||||||
"hfp_ag"
|
|
||||||
];
|
|
||||||
"bluez5.enable-sbc-xq" = true;
|
|
||||||
"bluez5.enable-msbc" = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"wireplumber.settings" = {
|
|
||||||
"bluetooth.autoswitch-to-headset-profile" = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
users.users.jet = {
|
users.users.jet = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
|
|
@ -357,18 +321,28 @@
|
||||||
HandleLidSwitch = "suspend";
|
HandleLidSwitch = "suspend";
|
||||||
HandleLidSwitchExternalPower = "suspend";
|
HandleLidSwitchExternalPower = "suspend";
|
||||||
HandleLidSwitchDocked = "ignore";
|
HandleLidSwitchDocked = "ignore";
|
||||||
HandlePowerKey = "poweroff";
|
HandlePowerKey = "suspend";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Framework AMD laptops are tuned for power-profiles-daemon; keep it as the
|
# Enable auto-cpufreq for intelligent power management (replaces TLP)
|
||||||
# single power policy daemon to avoid suspend/resume conflicts.
|
services.auto-cpufreq.enable = true;
|
||||||
services.power-profiles-daemon.enable = true;
|
services.auto-cpufreq.settings = {
|
||||||
services.auto-cpufreq.enable = false;
|
battery = {
|
||||||
services.tlp.enable = false;
|
governor = "powersave";
|
||||||
|
turbo = "never";
|
||||||
|
};
|
||||||
|
charger = {
|
||||||
|
governor = "performance";
|
||||||
|
turbo = "auto";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# Enable base suspend/resume hooks.
|
# Disable power-profiles-daemon (conflicts with auto-cpufreq)
|
||||||
|
services.power-profiles-daemon.enable = false;
|
||||||
|
|
||||||
|
# Enable power management (governor managed dynamically by auto-cpufreq)
|
||||||
powerManagement.enable = true;
|
powerManagement.enable = true;
|
||||||
|
|
||||||
# v4l2loopback for OBS Virtual Camera
|
# v4l2loopback for OBS Virtual Camera
|
||||||
|
|
@ -421,11 +395,10 @@
|
||||||
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666"
|
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666"
|
||||||
# GameCube adapter HID device (needed for Dolphin to access controllers)
|
# GameCube adapter HID device (needed for Dolphin to access controllers)
|
||||||
KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666", GROUP="input"
|
KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="0337", MODE="0666", GROUP="input"
|
||||||
# Disable autosuspend for Framework devices that have shown resume issues.
|
# Disable autosuspend for Framework fingerprint reader
|
||||||
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="27c6", ATTR{idProduct}=="609c", ATTR{power/control}="on", ATTR{power/autosuspend}="-1"
|
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="27a6", ATTR{power/autosuspend}="-1"
|
||||||
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="32ac", ATTR{power/control}="on", ATTR{power/autosuspend}="-1"
|
# Disable autosuspend for Framework USB-C hub controllers
|
||||||
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1022", ATTR{class}=="0x0c0330", ATTR{power/control}="on"
|
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="32ac", ATTR{power/autosuspend}="-1"
|
||||||
ACTION=="add", SUBSYSTEM=="platform", KERNEL=="USBC000:00", ATTR{power/control}="on"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
system.stateVersion = "25.05";
|
system.stateVersion = "25.05";
|
||||||
|
|
|
||||||
|
|
@ -67,60 +67,6 @@ let
|
||||||
"${homeLib.zulipStartup}/share/applications/zulip-startup.desktop"
|
"${homeLib.zulipStartup}/share/applications/zulip-startup.desktop"
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
vlcDesktop = "vlc.desktop";
|
|
||||||
vlcVideoMimeTypes = [
|
|
||||||
"application/mxf"
|
|
||||||
"application/x-extension-mp4"
|
|
||||||
"application/x-matroska"
|
|
||||||
"application/x-quicktime-media-link"
|
|
||||||
"application/x-quicktimeplayer"
|
|
||||||
"video/3gp"
|
|
||||||
"video/3gpp"
|
|
||||||
"video/3gpp2"
|
|
||||||
"video/avi"
|
|
||||||
"video/divx"
|
|
||||||
"video/dv"
|
|
||||||
"video/fli"
|
|
||||||
"video/flv"
|
|
||||||
"video/mp2t"
|
|
||||||
"video/mp4"
|
|
||||||
"video/mp4v-es"
|
|
||||||
"video/mpeg"
|
|
||||||
"video/mpeg-system"
|
|
||||||
"video/msvideo"
|
|
||||||
"video/ogg"
|
|
||||||
"video/quicktime"
|
|
||||||
"video/vnd.divx"
|
|
||||||
"video/vnd.mpegurl"
|
|
||||||
"video/vnd.rn-realvideo"
|
|
||||||
"video/webm"
|
|
||||||
"video/x-anim"
|
|
||||||
"video/x-avi"
|
|
||||||
"video/x-flc"
|
|
||||||
"video/x-fli"
|
|
||||||
"video/x-flv"
|
|
||||||
"video/x-m4v"
|
|
||||||
"video/x-matroska"
|
|
||||||
"video/x-mpeg"
|
|
||||||
"video/x-mpeg-system"
|
|
||||||
"video/x-mpeg2"
|
|
||||||
"video/x-ms-asf"
|
|
||||||
"video/x-ms-asf-plugin"
|
|
||||||
"video/x-ms-asx"
|
|
||||||
"video/x-ms-wm"
|
|
||||||
"video/x-ms-wmv"
|
|
||||||
"video/x-ms-wmx"
|
|
||||||
"video/x-ms-wvx"
|
|
||||||
"video/x-msvideo"
|
|
||||||
"video/x-nsv"
|
|
||||||
"video/x-ogm"
|
|
||||||
"video/x-ogm+ogg"
|
|
||||||
"video/x-theora"
|
|
||||||
"video/x-theora+ogg"
|
|
||||||
"x-content/video-dvd"
|
|
||||||
"x-content/video-svcd"
|
|
||||||
"x-content/video-vcd"
|
|
||||||
];
|
|
||||||
in
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
@ -320,12 +266,6 @@ in
|
||||||
"application/x-7z-compressed" = "org.gnome.FileRoller.desktop";
|
"application/x-7z-compressed" = "org.gnome.FileRoller.desktop";
|
||||||
"application/x-rar" = "org.gnome.FileRoller.desktop";
|
"application/x-rar" = "org.gnome.FileRoller.desktop";
|
||||||
"application/x-rar-compressed" = "org.gnome.FileRoller.desktop";
|
"application/x-rar-compressed" = "org.gnome.FileRoller.desktop";
|
||||||
}
|
};
|
||||||
// builtins.listToAttrs (
|
|
||||||
map (mimeType: {
|
|
||||||
name = mimeType;
|
|
||||||
value = vlcDesktop;
|
|
||||||
}) vlcVideoMimeTypes
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,6 @@
|
||||||
nautilus
|
nautilus
|
||||||
playerctl
|
playerctl
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
xprop
|
|
||||||
xdg-utils
|
xdg-utils
|
||||||
|
|
||||||
gnomeExtensions.appindicator
|
gnomeExtensions.appindicator
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue