a few changes
This commit is contained in:
+1
-1
@@ -1,2 +1,2 @@
|
|||||||
old/
|
old/
|
||||||
result/
|
result
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
{ pkgs, ... }: {
|
{ pkgs, ... }: {
|
||||||
networking.hostName = "Pontiac-G5";
|
networking.hostName = "Pontiac-G5";
|
||||||
|
console.enable = false;
|
||||||
systemd.services = {
|
systemd.services = {
|
||||||
"autovt@tty1" = {
|
"autovt@tty1" = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
@@ -1,18 +1,54 @@
|
|||||||
{ pkgs, ... }: {
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
kodi-with-addons = pkgs.kodi-wayland.withPackages (kodiPkgs: with kodiPkgs; [
|
||||||
|
inputstream-adaptive
|
||||||
|
bluetooth-manager
|
||||||
|
]);
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
networking.hostName = "htpc";
|
networking.hostName = "htpc";
|
||||||
|
|
||||||
users.users.user = {
|
# HDMI CEC
|
||||||
isNormalUser = true;
|
nixpkgs.overlays = [
|
||||||
extraGroups = [ "audio" "video" "input" ];
|
(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";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Kodi — run as a dedicated user session
|
# Kodi - run under Wayland
|
||||||
services.xserver.enable = true;
|
services.cage.user = "k3t";
|
||||||
services.displayManager.autoLogin = {
|
services.cage.extraArguments = [ "-m" "last" ];
|
||||||
enable = true;
|
services.cage.program = "${kodi-with-addons}/bin/kodi-standalone";
|
||||||
user = "user";
|
services.cage.enable = true;
|
||||||
};
|
|
||||||
services.xserver.desktopManager.kodi.enable = true;
|
|
||||||
|
|
||||||
# audio
|
# audio
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
@@ -23,5 +59,7 @@
|
|||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware.opengl.enable = true;
|
# gpu
|
||||||
|
hardware.raspberry-pi."4".fkms-3d.enable = true;
|
||||||
|
hardware.graphics.enable = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,18 +26,18 @@
|
|||||||
services.flatpak.enable = true;
|
services.flatpak.enable = true;
|
||||||
boot.binfmt.preferStaticEmulators = true;
|
boot.binfmt.preferStaticEmulators = true;
|
||||||
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
||||||
hardware.graphics.enable32Bit = true;
|
|
||||||
programs.nix-ld.enable = true;
|
programs.nix-ld.enable = true;
|
||||||
programs.appimage.enable = true;
|
programs.appimage.enable = true;
|
||||||
programs.appimage.binfmt = true;
|
programs.appimage.binfmt = true;
|
||||||
|
|
||||||
# Enable CUPS to print documents.
|
# Printing
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
|
|
||||||
# graphics
|
# Graphics
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
hardware.graphics = {
|
hardware.graphics = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
enable32Bit = true;
|
||||||
extraPackages = with pkgs; [
|
extraPackages = with pkgs; [
|
||||||
# Required for modern Intel GPUs (Xe iGPU and ARC)
|
# Required for modern Intel GPUs (Xe iGPU and ARC)
|
||||||
intel-media-driver # VA-API (iHD) userspace
|
intel-media-driver # VA-API (iHD) userspace
|
||||||
|
|||||||
@@ -16,11 +16,11 @@
|
|||||||
};
|
};
|
||||||
enableRedistributableFirmware = true;
|
enableRedistributableFirmware = true;
|
||||||
};
|
};
|
||||||
|
networking.networkmanager.wifi.powersave = false;
|
||||||
|
|
||||||
boot.loader.grub.enable = false;
|
boot.loader.grub.enable = false;
|
||||||
boot.loader.generic-extlinux-compatible.enable = true;
|
boot.loader.generic-extlinux-compatible.enable = true;
|
||||||
|
|
||||||
console.enable = false;
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
libraspberrypi
|
libraspberrypi
|
||||||
raspberrypi-eeprom
|
raspberrypi-eeprom
|
||||||
|
|||||||
Reference in New Issue
Block a user