whole lotta everythin
This commit is contained in:
@@ -32,6 +32,7 @@
|
||||
nicotine-plus
|
||||
lutris
|
||||
prismlauncher
|
||||
rpcs3
|
||||
winetricks
|
||||
];
|
||||
};
|
||||
|
||||
@@ -30,67 +30,95 @@ let
|
||||
visualization-goom
|
||||
visualization-fishbmc
|
||||
visualization-matrix
|
||||
visualization-pictureit
|
||||
visualization-shadertoy
|
||||
visualization-spectrum
|
||||
visualization-starburst
|
||||
visualization-waveform
|
||||
]);
|
||||
in
|
||||
|
||||
{
|
||||
networking.hostName = "htpc";
|
||||
|
||||
# hdmi cec
|
||||
environment.systemPackages = with pkgs; [
|
||||
grim
|
||||
slurp
|
||||
wl-clipboard
|
||||
mako
|
||||
# hdmi cec
|
||||
libcec
|
||||
];
|
||||
nixpkgs.overlays = [
|
||||
(self: super: { libcec = super.libcec.override { withLibraspberrypi = true; }; })
|
||||
];
|
||||
environment.systemPackages = with pkgs; [
|
||||
libcec
|
||||
];
|
||||
|
||||
services.udev.extraRules = ''
|
||||
# allow access to raspi cec device for video group (and optionally register it as a systemd device, used below)
|
||||
KERNEL=="vchiq", GROUP="video", MODE="0660", TAG+="systemd", ENV{SYSTEMD_ALIAS}="/dev/vchiq"
|
||||
'';
|
||||
systemd.sockets."cec-client" = {
|
||||
after = [ "dev-vchiq.device" ];
|
||||
bindsTo = [ "dev-vchiq.device" ];
|
||||
wantedBy = [ "sockets.target" ];
|
||||
socketConfig = {
|
||||
ListenFIFO = "/run/cec.fifo";
|
||||
SocketGroup = "video";
|
||||
SocketMode = "0660";
|
||||
};
|
||||
};
|
||||
systemd.services."cec-client" = {
|
||||
after = [ "dev-vchiq.device" ];
|
||||
bindsTo = [ "dev-vchiq.device" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
ExecStart = ''${pkgs.libcec}/bin/cec-client -d 1'';
|
||||
ExecStop = ''/bin/sh -c "echo q > /run/cec.fifo"'';
|
||||
StandardInput = "socket";
|
||||
StandardOutput = "journal";
|
||||
Restart="no";
|
||||
};
|
||||
};
|
||||
#systemd.sockets."cec-client" = {
|
||||
# after = [ "dev-vchiq.device" ];
|
||||
# bindsTo = [ "dev-vchiq.device" ];
|
||||
# wantedBy = [ "sockets.target" ];
|
||||
# socketConfig = {
|
||||
# ListenFIFO = "/run/cec.fifo";
|
||||
# SocketGroup = "video";
|
||||
# SocketMode = "0660";
|
||||
# };
|
||||
#};
|
||||
#systemd.services."cec-client" = {
|
||||
# after = [ "dev-vchiq.device" ];
|
||||
# bindsTo = [ "dev-vchiq.device" ];
|
||||
# wantedBy = [ "multi-user.target" ];
|
||||
# serviceConfig = {
|
||||
# ExecStart = ''${pkgs.libcec}/bin/cec-client -d 1'';
|
||||
# ExecStop = ''/bin/sh -c "echo q > /run/cec.fifo"'';
|
||||
# StandardInput = "socket";
|
||||
# StandardOutput = "journal";
|
||||
# Restart="no";
|
||||
# };
|
||||
#};
|
||||
|
||||
# kde connect for remote ctrl
|
||||
programs.kdeconnect.enable = true;
|
||||
|
||||
# kodi wayland
|
||||
#services.cage.user = "k3t";
|
||||
#services.cage.extraArguments = [ "-d" "-s" ];
|
||||
#services.cage.program = "${kodi-with-addons}/bin/kodi-standalone";
|
||||
#services.cage.enable = true;
|
||||
# kodi wayland v1
|
||||
##services.cage.user = "k3t";
|
||||
##services.cage.extraArguments = [ "-d" "-s" ];
|
||||
##services.cage.program = "${kodi-with-addons}/bin/kodi-standalone";
|
||||
##services.cage.enable = true;
|
||||
|
||||
# kodi x11
|
||||
services.xserver.enable = true;
|
||||
services.xserver.desktopManager.kodi.enable = true;
|
||||
services.xserver.desktopManager.kodi.package = kodi-with-addons;
|
||||
services.xserver.displayManager.lightdm.greeter.enable = false;
|
||||
services.displayManager.autoLogin.user = "k3t";
|
||||
##services.xserver.enable = true;
|
||||
##services.xserver.desktopManager.kodi.enable = true;
|
||||
##services.xserver.desktopManager.kodi.package = kodi-with-addons;
|
||||
##services.xserver.displayManager.lightdm.greeter.enable = false;
|
||||
##services.displayManager.autoLogin.user = "k3t";
|
||||
|
||||
# kodi wayland, v2
|
||||
security.pam.loginLimits = [
|
||||
{ domain = "@users"; item = "rtprio"; type = "-"; value = 1; }
|
||||
];
|
||||
services.displayManager = {
|
||||
sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
};
|
||||
autoLogin = {
|
||||
enable = true;
|
||||
user = "k3t"; # Replace with the desired user
|
||||
};
|
||||
};
|
||||
|
||||
programs.sway = {
|
||||
enable = true;
|
||||
wrapperFeatures.gtk = true;
|
||||
};
|
||||
|
||||
# kanshi systemd service
|
||||
systemd.user.services.kanshi = {
|
||||
description = "kanshi daemon";
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = ''${pkgs.kanshi}/bin/kanshi -c kanshi_config_file'';
|
||||
};
|
||||
};
|
||||
|
||||
# audio
|
||||
security.rtkit.enable = true;
|
||||
|
||||
Reference in New Issue
Block a user