migration PC fixe vers Wayland
This commit is contained in:
parent
e8586051dd
commit
5a83340353
@ -29,9 +29,6 @@
|
|||||||
boot.tmp.useTmpfs = false;
|
boot.tmp.useTmpfs = false;
|
||||||
boot.supportedFilesystems = [ "zfs" ];
|
boot.supportedFilesystems = [ "zfs" ];
|
||||||
|
|
||||||
virtualisation.virtualbox.host.enable = true;
|
|
||||||
# virtualisation.virtualbox.host.enableExtensionPack = true;
|
|
||||||
# virtualisation.anbox.enable = true;
|
|
||||||
virtualisation.podman.enable = true;
|
virtualisation.podman.enable = true;
|
||||||
|
|
||||||
services.zfs = {
|
services.zfs = {
|
||||||
@ -62,21 +59,6 @@
|
|||||||
# Logitech G920
|
# Logitech G920
|
||||||
hardware.usb-modeswitch.enable = true;
|
hardware.usb-modeswitch.enable = true;
|
||||||
|
|
||||||
# hardware.pulseaudio.extraConfig = ''
|
|
||||||
# load-module module-null-sink sink_name=mic_denoised_out rate=48000
|
|
||||||
# load-module module-ladspa-sink sink_name=mic_raw_in sink_master=mic_denoised_out label=noise_suppressor_mono plugin=${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so control=50
|
|
||||||
# load-module module-loopback source=alsa_input.pci-0000_09_00.4.analog-stereo sink=mic_raw_in channels=1 source_dont_move=true sink_dont_move=true
|
|
||||||
|
|
||||||
# load-module module-echo-cancel source_name=hd_mic source_master=mic_denoised_out.monitor sink_master=alsa_output.pci-0000_09_00.4.analog-stereo
|
|
||||||
|
|
||||||
# set-default-source hd_mic
|
|
||||||
# '';
|
|
||||||
|
|
||||||
# hardware.pulseaudio.configFile = pkgs.runCommand "default.pa" {} ''
|
|
||||||
# sed '/module-switch-on-port-available$/d' \
|
|
||||||
# ${pkgs.pulseaudio}/etc/pulse/default.pa > $out
|
|
||||||
# '';
|
|
||||||
|
|
||||||
services.udev.packages = with pkgs; [
|
services.udev.packages = with pkgs; [
|
||||||
usb-modeswitch-data # Logitech G920
|
usb-modeswitch-data # Logitech G920
|
||||||
];
|
];
|
||||||
@ -85,8 +67,6 @@
|
|||||||
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="0664", GROUP="dialout"
|
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="0664", GROUP="dialout"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
security.pki.certificateFiles = [ ./codemasters.pem ];
|
|
||||||
|
|
||||||
networking.hostName = "paul-fixe";
|
networking.hostName = "paul-fixe";
|
||||||
networking.hostId = "3a1f739e";
|
networking.hostId = "3a1f739e";
|
||||||
|
|
||||||
@ -104,11 +84,6 @@
|
|||||||
|
|
||||||
networking.firewall.enable = false;
|
networking.firewall.enable = false;
|
||||||
|
|
||||||
services.xserver.displayManager.autoLogin = {
|
|
||||||
enable = true;
|
|
||||||
user = "paul";
|
|
||||||
};
|
|
||||||
|
|
||||||
users.users.paul = {
|
users.users.paul = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [ "wheel" "networkmanager" "wireshark" "input" "dialout" "libvirtd" "vboxusers" ];
|
extraGroups = [ "wheel" "networkmanager" "wireshark" "input" "dialout" "libvirtd" "vboxusers" ];
|
||||||
@ -125,164 +100,11 @@
|
|||||||
X11Forwarding = true;
|
X11Forwarding = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# security.pki.certificates = [
|
|
||||||
# ''
|
|
||||||
# -----BEGIN CERTIFICATE-----
|
|
||||||
# MIIDoTCCAomgAwIBAgIGDorvJrq1MA0GCSqGSIb3DQEBCwUAMCgxEjAQBgNVBAMM
|
|
||||||
# CW1pdG1wcm94eTESMBAGA1UECgwJbWl0bXByb3h5MB4XDTIwMDgzMDE5MjA1NloX
|
|
||||||
# DTIzMDkwMTE5MjA1NlowKDESMBAGA1UEAwwJbWl0bXByb3h5MRIwEAYDVQQKDAlt
|
|
||||||
# aXRtcHJveHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsUHB2if9A
|
|
||||||
# L5ytR9VrZncwDdx3J6ZdA2+wZQe9EjtX5ax1r55bbQBoJmN2HqZCSA3vdvMzr42W
|
|
||||||
# Jx0ksNhNocEGvER2dTUIqkUKeeYQIRCc5CD9T5IpUVVKm3aeJo+FATmuzg4m23MZ
|
|
||||||
# a9Up4nCdUJwufSqzv0ZWvEHERWtRXPYRZ2t+vKqnCS+dOQ3NsGWvC+12i7kNMKyy
|
|
||||||
# 0ylFBY/BZfaH/kMVzUijAnNQPWpW3T/Wqpx7z+IXZ+ccCQ1U1N26FXhSMa/+DenW
|
|
||||||
# fo27QVNOu5cIIpAYmTl6+Oek0XLSH8oFLdjeVtBJuHFA1iAfmqPv4yJDKbSgg/d8
|
|
||||||
# Jb46BE2ZyW6RAgMBAAGjgdAwgc0wDwYDVR0TAQH/BAUwAwEB/zARBglghkgBhvhC
|
|
||||||
# AQEEBAMCAgQweAYDVR0lBHEwbwYIKwYBBQUHAwEGCCsGAQUFBwMCBggrBgEFBQcD
|
|
||||||
# BAYIKwYBBQUHAwgGCisGAQQBgjcCARUGCisGAQQBgjcCARYGCisGAQQBgjcKAwEG
|
|
||||||
# CisGAQQBgjcKAwMGCisGAQQBgjcKAwQGCWCGSAGG+EIEATAOBgNVHQ8BAf8EBAMC
|
|
||||||
# AQYwHQYDVR0OBBYEFEiFqrQtFmTV66rlQ9SCqp7ohrtsMA0GCSqGSIb3DQEBCwUA
|
|
||||||
# A4IBAQBfH5xpxt4mCdnjiISaMeEcKuur2kfVbQEKNceDeKLZJfcwEkMtAr0LeyMV
|
|
||||||
# 1hkExtvyU0JPmgyzU7Le4UHEB8pwyyD3kYx7vBtxjVSXAbK1YKgDllPmXtlJGmA/
|
|
||||||
# SMuxnwkUXwMeZBxmu8LR1SOQiMX+aZvYbQIjigduXOC/ZSHYtJbh+RmrvHFEBu7L
|
|
||||||
# zZx8DzJKOmlfo9gohNIW1ucRM6B4B5yy5plqurGlkFPHlRqGoWkJPI4oB+cobzMh
|
|
||||||
# QidzHgk4Set3bqIuYAsqtHGxdTtnGooagQBUWt0CxmGdmonofzinsAAasKprcBl6
|
|
||||||
# QaNGz7o/LfHprXvCM1mHjbVVbZN2
|
|
||||||
# -----END CERTIFICATE-----
|
|
||||||
# ''
|
|
||||||
# ];
|
|
||||||
|
|
||||||
# services.wakeonlan.interfaces = [ { interface = "eno1"; method = "magicpacket"; } ];
|
|
||||||
|
|
||||||
services.nginx = {
|
|
||||||
enable = true;
|
|
||||||
recommendedGzipSettings = true;
|
|
||||||
recommendedOptimisation = true;
|
|
||||||
package = pkgs.nginx.override {
|
|
||||||
modules = with pkgs.nginxModules; [ rtmp ];
|
|
||||||
};
|
|
||||||
virtualHosts."stream.nyanlout.re" = {
|
|
||||||
locations."/" = {
|
|
||||||
root = "/var/www/hls/";
|
|
||||||
extraConfig = ''
|
|
||||||
add_header Cache-Control no-cache;
|
|
||||||
add_header Access-Control-Allow-Origin *;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
default = true;
|
|
||||||
};
|
|
||||||
appendConfig = let
|
|
||||||
rootLocation = config.services.nginx.virtualHosts."stream.nyanlout.re".locations."/".root;
|
|
||||||
in ''
|
|
||||||
rtmp {
|
|
||||||
server {
|
|
||||||
listen 1935;
|
|
||||||
|
|
||||||
application live {
|
|
||||||
live on;
|
|
||||||
interleave on;
|
|
||||||
exec_push ${pkgs.ffmpeg}/bin/ffmpeg -i rtmp://localhost/$app/$name -async 1 -vsync -1
|
|
||||||
-c:v libx264 -c:a aac -b:v 256k -b:a 96k -vf "scale=480:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -f flv rtmp://localhost/show/$name_low
|
|
||||||
-c:v libx264 -c:a aac -b:v 768k -b:a 96k -vf "scale=720:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -f flv rtmp://localhost/show/$name_mid
|
|
||||||
-c:v libx264 -c:a aac -b:v 1024k -b:a 128k -vf "scale=960:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -f flv rtmp://localhost/show/$name_high
|
|
||||||
-c:v libx264 -c:a aac -b:v 1920k -b:a 128k -vf "scale=1280:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -f flv rtmp://localhost/show/$name_hd720
|
|
||||||
-c copy -f flv rtmp://localhost/show/$name_src 2>>${rootLocation}/ffmpeg-$name.log;
|
|
||||||
}
|
|
||||||
|
|
||||||
application show {
|
|
||||||
live on;
|
|
||||||
hls on;
|
|
||||||
|
|
||||||
hls_path ${rootLocation};
|
|
||||||
hls_fragment 5;
|
|
||||||
hls_playlist_length 10;
|
|
||||||
hls_nested on;
|
|
||||||
|
|
||||||
hls_variant _low BANDWIDTH=352000; # Low bitrate, sub-SD resolution
|
|
||||||
hls_variant _mid BANDWIDTH=448000; # Medium bitrate, SD resolution
|
|
||||||
hls_variant _high BANDWIDTH=1152000; # High bitrate, higher-than-SD resolution
|
|
||||||
hls_variant _hd720 BANDWIDTH=2048000; # High bitrate, HD 720p resolution
|
|
||||||
hls_variant _src BANDWIDTH=8192000; # Source bitrate, source resolution
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
services.xserver.deviceSection = ''
|
|
||||||
Option "metamodes" "DP-4: 3440x1440_144 +0+0 {AllowGSYNCCompatible=On}"
|
|
||||||
'';
|
|
||||||
|
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
services.printing.drivers = [ pkgs.hplip ];
|
services.printing.drivers = [ pkgs.hplip ];
|
||||||
|
|
||||||
systemd = let
|
systemd.services = {
|
||||||
DP4Config = "--output DP-4 --mode 3440x1440 --rate 144";
|
zfs-replication.serviceConfig.StateDirectory = "zfs-replication";
|
||||||
HDMIConfig = "--output HDMI-0 --auto --left-of DP-4";
|
|
||||||
in {
|
|
||||||
services = {
|
|
||||||
wol = {
|
|
||||||
description = "Wake-on-LAN";
|
|
||||||
wantedBy = [ "multi-user.target" ];
|
|
||||||
requires = [ "network.target" ];
|
|
||||||
after = [ "network.target" ];
|
|
||||||
script = ''
|
|
||||||
${pkgs.ethtool}/sbin/ethtool -s eno1 wol g
|
|
||||||
'';
|
|
||||||
serviceConfig.Type = "oneshot";
|
|
||||||
};
|
|
||||||
nginx.serviceConfig.ReadWritePaths = "/var/www/hls";
|
|
||||||
zfs-replication.serviceConfig.StateDirectory = "zfs-replication";
|
|
||||||
};
|
|
||||||
user.services = {
|
|
||||||
"enableTV" = {
|
|
||||||
description = "Enable TV output";
|
|
||||||
script = ''
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr ${DP4Config} --primary
|
|
||||||
/run/current-system/sw/bin/nvidia-settings --assign CurrentMetaMode="DP-4: 3440x1440_144 { AllowGSYNCCompatible=On }"
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr ${HDMIConfig}
|
|
||||||
${pkgs.pipewire}/bin/pw-cli s 43 Profile '{ index: 1 }'
|
|
||||||
'';
|
|
||||||
conflicts = ["CSMode.service"];
|
|
||||||
serviceConfig.Type = "oneshot";
|
|
||||||
};
|
|
||||||
"primaryTV" = {
|
|
||||||
description = "Set TV output as primary";
|
|
||||||
script = ''
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr ${DP4Config}
|
|
||||||
/run/current-system/sw/bin/nvidia-settings --assign CurrentMetaMode="DP-4: 3440x1440_144 { AllowGSYNCCompatible=On }"
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr ${HDMIConfig} --primary
|
|
||||||
${pkgs.pipewire}/bin/pw-cli s 43 Profile '{ index: 1 }'
|
|
||||||
'';
|
|
||||||
conflicts = ["CSMode.service"];
|
|
||||||
serviceConfig.Type = "oneshot";
|
|
||||||
};
|
|
||||||
"FreeSyncMode" = {
|
|
||||||
description = "Enable FreeSync screen only";
|
|
||||||
script = ''
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr ${DP4Config}
|
|
||||||
/run/current-system/sw/bin/nvidia-settings --assign CurrentMetaMode="DP-4: 3440x1440_144 { AllowGSYNCCompatible=On }"
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr --output HDMI-0 --off
|
|
||||||
'';
|
|
||||||
conflicts = ["CSMode.service"];
|
|
||||||
serviceConfig.Type = "oneshot";
|
|
||||||
};
|
|
||||||
"CSMode" = {
|
|
||||||
description = "Enable 4:3 black bars";
|
|
||||||
script = ''
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr ${DP4Config} --primary
|
|
||||||
/run/current-system/sw/bin/nvidia-settings --assign CurrentMetaMode="DP-4: 3440x1440_144 { ViewPortIn=3440x1440, ViewPortOut=1920x1440+760+0, AllowGSYNCCompatible=On }"
|
|
||||||
${pkgs.xorg.xrandr}/bin/xrandr --output HDMI-0 --off
|
|
||||||
'';
|
|
||||||
preStop = ''
|
|
||||||
/run/current-system/sw/bin/nvidia-settings --assign CurrentMetaMode="DP-4: 3440x1440_144 { ViewPortIn=3440x1440, ViewPortOut=3440x1440+0+0, AllowGSYNCCompatible=On }"
|
|
||||||
'';
|
|
||||||
serviceConfig = {
|
|
||||||
Type = "oneshot";
|
|
||||||
RemainAfterExit = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
system.stateVersion = "20.03";
|
system.stateVersion = "20.03";
|
||||||
|
@ -11,6 +11,10 @@
|
|||||||
|
|
||||||
services.xserver.videoDrivers = [ "nvidia" ];
|
services.xserver.videoDrivers = [ "nvidia" ];
|
||||||
hardware.cpu.amd.updateMicrocode = true;
|
hardware.cpu.amd.updateMicrocode = true;
|
||||||
|
hardware.nvidia = {
|
||||||
|
modesetting.enable = true;
|
||||||
|
nvidiaSettings = false;
|
||||||
|
};
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" =
|
||||||
{ device = "rpool/root/nixos";
|
{ device = "rpool/root/nixos";
|
||||||
|
@ -14,8 +14,6 @@
|
|||||||
|
|
||||||
betaflight-configurator
|
betaflight-configurator
|
||||||
|
|
||||||
# electrum
|
|
||||||
# electron-cash
|
|
||||||
ledger-live-desktop
|
ledger-live-desktop
|
||||||
monero-gui
|
monero-gui
|
||||||
|
|
||||||
@ -37,7 +35,7 @@
|
|||||||
ark
|
ark
|
||||||
kate
|
kate
|
||||||
kmail
|
kmail
|
||||||
plasma5Packages.kdeconnect-kde
|
kdePackages.kdeconnect-kde
|
||||||
okular
|
okular
|
||||||
yakuake
|
yakuake
|
||||||
konversation
|
konversation
|
||||||
@ -50,8 +48,6 @@
|
|||||||
inherit (texlive) scheme-small titling collection-langfrench cm-super;
|
inherit (texlive) scheme-small titling collection-langfrench cm-super;
|
||||||
})
|
})
|
||||||
|
|
||||||
libsForQt5.breeze-gtk
|
|
||||||
|
|
||||||
libreoffice
|
libreoffice
|
||||||
|
|
||||||
gimp
|
gimp
|
||||||
@ -76,12 +72,6 @@
|
|||||||
|
|
||||||
programs.steam.enable = true;
|
programs.steam.enable = true;
|
||||||
|
|
||||||
# hardware = {
|
|
||||||
# pulseaudio.enable = true;
|
|
||||||
# };
|
|
||||||
|
|
||||||
# sound.enable = true;
|
|
||||||
|
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
@ -107,12 +97,14 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
xserver = {
|
desktopManager.plasma6.enable = true;
|
||||||
enable = true;
|
displayManager = {
|
||||||
layout = "fr";
|
autoLogin.user = "paul";
|
||||||
exportConfiguration = true;
|
sddm = {
|
||||||
displayManager.sddm.enable = true;
|
enable = true;
|
||||||
desktopManager.plasma5.enable = true;
|
wayland.enable = true;
|
||||||
|
autoLogin.relogin = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
udev.packages = with pkgs; [ ledger-udev-rules ];
|
udev.packages = with pkgs; [ ledger-udev-rules ];
|
||||||
pcscd.enable = true;
|
pcscd.enable = true;
|
||||||
|
Loading…
Reference in New Issue
Block a user