flakes: Migrate the config and miku to flakes
This commit is contained in:
@@ -1,5 +1,13 @@
|
||||
{ ... }:
|
||||
{ config, lib, ... }:
|
||||
|
||||
{
|
||||
hardware.cpu.amd.updateMicrocode = true;
|
||||
let
|
||||
cfg = config.ptw.hardware.amdcpu;
|
||||
in {
|
||||
options.ptw.hardware.amdcpu = {
|
||||
enable = lib.mkEnableOption "Enable support for AMD CPUs";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
hardware.cpu.amd.updateMicrocode = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,11 +1,19 @@
|
||||
{
|
||||
pkgs, ...
|
||||
config, lib, pkgs, ...
|
||||
}:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
unstable.mesa
|
||||
unstable.firmwareLinuxNonfree
|
||||
];
|
||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||
let
|
||||
cfg = config.ptw.hardware.amdgpu;
|
||||
in {
|
||||
options.ptw.hardware.amdgpu = {
|
||||
enable = lib.mkEnableOption "Enable support for AMDGPU GPUs";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
unstable.mesa
|
||||
unstable.firmwareLinuxNonfree
|
||||
];
|
||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,13 +1,19 @@
|
||||
{
|
||||
pkgs, ...
|
||||
}:
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
hardware = {
|
||||
cpu.intel.updateMicrocode = true;
|
||||
# NOTE: Assuming each Intel CPU has integrated graphics
|
||||
opengl.extraPackages = with pkgs; [ vaapiIntel intel-media-driver ];
|
||||
let
|
||||
cfg = config.ptw.hardware.intel;
|
||||
in {
|
||||
options.ptw.hardware.intel = {
|
||||
enable = lib.mkEnableOption "Enable support for Intel CPUs";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
hardware = {
|
||||
cpu.intel.updateMicrocode = true;
|
||||
# NOTE: Assuming each Intel CPU has integrated graphics
|
||||
opengl.extraPackages = with pkgs; [ vaapiIntel intel-media-driver ];
|
||||
};
|
||||
# TODO: Remove?
|
||||
services.xserver.videoDrivers = [ "modesetting" "fbdev" ];
|
||||
};
|
||||
# TODO: Remove?
|
||||
services.xserver.videoDrivers = [ "modesetting" "fbdev" ];
|
||||
}
|
||||
|
||||
@@ -1,9 +1,17 @@
|
||||
{ pkgs, ... }:
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
# Special options for mobile devices
|
||||
{
|
||||
# Battery savings
|
||||
#services.tlp.enable = true;
|
||||
let
|
||||
cfg = config.ptw.hardware.mobile;
|
||||
in {
|
||||
options.ptw.hardware.mobile = {
|
||||
enable = lib.mkEnableOption "Enable support for mobile devices";
|
||||
};
|
||||
|
||||
hardware.sensor.iio.enable = true;
|
||||
config = lib.mkIf cfg.enable {
|
||||
# Battery savings
|
||||
#services.tlp.enable = true;
|
||||
|
||||
hardware.sensor.iio.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
fetchurl = pkgs.fetchurl;
|
||||
@@ -12,66 +12,72 @@ let
|
||||
sha256 = sha256;
|
||||
};
|
||||
};
|
||||
cfg = config.ptw.hardware.surface;
|
||||
in {
|
||||
environment.etc = {
|
||||
"ipts.conf".text = ''
|
||||
options.ptw.hardware.surface = {
|
||||
enable = lib.mkEnableOption "Enable support for the Microsoft Surface Pro 6";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.etc = {
|
||||
"ipts.conf".text = ''
|
||||
[Config]
|
||||
BlockOnPalm = true
|
||||
'';
|
||||
"thermald/thermal-cpu-cdev-order.xml".source = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/linux-surface/linux-surface/${commit}/contrib/thermald/surface_pro_5/thermal-conf.xml.auto.mobile";
|
||||
sha256 = "1wsrgad6k4haw4m0jjcjxhmj4742kcb3q8rmfpclbw0czm8384al";
|
||||
};
|
||||
};
|
||||
|
||||
powerManagement = {
|
||||
enable = true;
|
||||
cpuFreqGovernor = "powersave";
|
||||
};
|
||||
hardware.video.hidpi.enable = true;
|
||||
|
||||
systemd.services.iptsd = {
|
||||
description = "Userspace daemon for Intel Precise Touch & Stylus";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "dev-ipts-15.device" ];
|
||||
after = [ "dev-ipts-15.device" ];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.iptsd}/bin/iptsd";
|
||||
};
|
||||
};
|
||||
environment.systemPackages = with pkgs; [ iptsd surface-control ];
|
||||
services = {
|
||||
udev.packages = with pkgs; [ iptsd surface-control ];
|
||||
thermald = {
|
||||
enable = true;
|
||||
configFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/linux-surface/linux-surface/${commit}/contrib/thermald/thermal-conf.xml";
|
||||
sha256 = "1xj70n9agy41906jgm4yjmsx58i7pzsizpvv3rkzq78k95qjfmc9";
|
||||
"thermald/thermal-cpu-cdev-order.xml".source = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/linux-surface/linux-surface/${commit}/contrib/thermald/surface_pro_5/thermal-conf.xml.auto.mobile";
|
||||
sha256 = "1wsrgad6k4haw4m0jjcjxhmj4742kcb3q8rmfpclbw0czm8384al";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_5_13;
|
||||
kernelPatches = [
|
||||
(mkPatch "0001-surface3-oemb" "1h5f4qgrv74x8q02f29xfia9imcm6svh5gv5vb5izxx6w5i6c9fh")
|
||||
#(mkPatch "0002-mwifiex" "1qn5lqhbg67j1226msiijq42zdjwmvxzyfd5q366hlczcsw7a7r2")
|
||||
(mkPatch "0003-ath10k" "0zwyb1vksh6sjbwy5fp2c108m6fqzrv78cz3a296cff550ldn0fj")
|
||||
(mkPatch "0004-ipts" "0ap5li17zyvba1zx4ryyyk42m00rg5ympj2n24g5ylrld0n2xc3x")
|
||||
(mkPatch "0005-surface-sam-over-hid" "1vm4v84zbyiiqwby3cr7n8ffibx072rb7rhrl5hv37dsdr03gsa3")
|
||||
(mkPatch "0006-surface-sam" "1fi0w9bnfnwllmypk3llc58dmfsvx34772g8c52dgi4h9wsgnbhj")
|
||||
(mkPatch "0007-surface-hotplug" "0g3fkc12pc15aqq6nqk1zfp99lj1wj7cgc1n9691bp8fhqx5aj28")
|
||||
(mkPatch "0008-surface-typecover" "0803nd0w5rv17kwk3y577pm22zwzpcb52ddlkanm7jrbsrhk130f")
|
||||
#(mkPatch "0009-cameras" "1i5c16bx8drzagv5nkvmsyixvsz3w75lblabsmgxlh1znxsh7cj5")
|
||||
(mkPatch "0010-amd-gpio" "0qibdak0ivsch0r5kxd5hhmvw7rd75xy9mmxjbcmysv8q2y9m6hn") # TODO: Maybe drop
|
||||
(mkPatch "0011-amd-s0ix" "0awv32wqwkjsxs1bhg82rqq3c4ni2f9vsdm7iscilbad28ngdab8") # TODO: Maybe drop
|
||||
powerManagement = {
|
||||
enable = true;
|
||||
cpuFreqGovernor = "powersave";
|
||||
};
|
||||
hardware.video.hidpi.enable = true;
|
||||
|
||||
systemd.services.iptsd = {
|
||||
description = "Userspace daemon for Intel Precise Touch & Stylus";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "dev-ipts-15.device" ];
|
||||
after = [ "dev-ipts-15.device" ];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${pkgs.iptsd}/bin/iptsd";
|
||||
};
|
||||
};
|
||||
environment.systemPackages = with pkgs; [ iptsd surface-control ];
|
||||
services = {
|
||||
udev.packages = with pkgs; [ iptsd surface-control ];
|
||||
thermald = {
|
||||
enable = true;
|
||||
configFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/linux-surface/linux-surface/${commit}/contrib/thermald/thermal-conf.xml";
|
||||
sha256 = "1xj70n9agy41906jgm4yjmsx58i7pzsizpvv3rkzq78k95qjfmc9";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
{
|
||||
name = "surface-config";
|
||||
patch = null;
|
||||
# Options from https://github.com/linux-surface/linux-surface/blob/master/configs/surface-5.13.config
|
||||
extraConfig = ''
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_5_13;
|
||||
kernelPatches = [
|
||||
(mkPatch "0001-surface3-oemb" "1h5f4qgrv74x8q02f29xfia9imcm6svh5gv5vb5izxx6w5i6c9fh")
|
||||
#(mkPatch "0002-mwifiex" "1qn5lqhbg67j1226msiijq42zdjwmvxzyfd5q366hlczcsw7a7r2")
|
||||
(mkPatch "0003-ath10k" "0zwyb1vksh6sjbwy5fp2c108m6fqzrv78cz3a296cff550ldn0fj")
|
||||
(mkPatch "0004-ipts" "0ap5li17zyvba1zx4ryyyk42m00rg5ympj2n24g5ylrld0n2xc3x")
|
||||
(mkPatch "0005-surface-sam-over-hid" "1vm4v84zbyiiqwby3cr7n8ffibx072rb7rhrl5hv37dsdr03gsa3")
|
||||
(mkPatch "0006-surface-sam" "1fi0w9bnfnwllmypk3llc58dmfsvx34772g8c52dgi4h9wsgnbhj")
|
||||
(mkPatch "0007-surface-hotplug" "0g3fkc12pc15aqq6nqk1zfp99lj1wj7cgc1n9691bp8fhqx5aj28")
|
||||
(mkPatch "0008-surface-typecover" "0803nd0w5rv17kwk3y577pm22zwzpcb52ddlkanm7jrbsrhk130f")
|
||||
#(mkPatch "0009-cameras" "1i5c16bx8drzagv5nkvmsyixvsz3w75lblabsmgxlh1znxsh7cj5")
|
||||
(mkPatch "0010-amd-gpio" "0qibdak0ivsch0r5kxd5hhmvw7rd75xy9mmxjbcmysv8q2y9m6hn") # TODO: Maybe drop
|
||||
(mkPatch "0011-amd-s0ix" "0awv32wqwkjsxs1bhg82rqq3c4ni2f9vsdm7iscilbad28ngdab8") # TODO: Maybe drop
|
||||
|
||||
{
|
||||
name = "surface-config";
|
||||
patch = null;
|
||||
# Options from https://github.com/linux-surface/linux-surface/blob/master/configs/surface-5.13.config
|
||||
extraConfig = ''
|
||||
#
|
||||
# Surface Aggregator Module
|
||||
#
|
||||
@@ -147,7 +153,8 @@ in {
|
||||
MFD_INTEL_LPSS_PCI y
|
||||
INTEL_IDMA64 y
|
||||
'';
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user