Switched hw acceleration to enhance chromium UX

This commit is contained in:
2025-07-12 19:58:19 +03:00
parent c2ce919b9e
commit a648f87a1e
6 changed files with 61 additions and 41 deletions

View File

@@ -8,12 +8,16 @@
# Add other flake inputs if needed # Add other flake inputs if needed
}; };
outputs = { self, nixpkgs, ... }@inputs: { outputs = {
self,
nixpkgs,
...
} @ inputs: {
nixosConfigurations = { nixosConfigurations = {
puter = nixpkgs.lib.nixosSystem { puter = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ ./hosts/puter/default.nix ]; modules = [./hosts/puter/default.nix];
specialArgs = { inherit inputs; }; specialArgs = {inherit inputs;};
}; };
}; };
}; };

View File

@@ -1,31 +1,34 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: { {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
boot.initrd.availableKernelModules = boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"];
[ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.kernelModules = [];
boot.initrd.kernelModules = [ ]; boot.kernelModules = ["kvm-intel" "wl"];
boot.kernelModules = [ "kvm-intel" "wl" ]; boot.extraModulePackages = [config.boot.kernelPackages.broadcom_sta];
boot.extraModulePackages = [ config.boot.kernelPackages.broadcom_sta ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/19a0aa4c-8d49-4545-9ed6-cd4a952f9353"; device = "/dev/disk/by-uuid/19a0aa4c-8d49-4545-9ed6-cd4a952f9353";
fsType = "ext4"; fsType = "ext4";
}; };
boot.initrd.luks.devices."luks-08992355-1404-44dc-9bb4-fd32f1d0b62d".device = boot.initrd.luks.devices."luks-08992355-1404-44dc-9bb4-fd32f1d0b62d".device = "/dev/disk/by-uuid/08992355-1404-44dc-9bb4-fd32f1d0b62d";
"/dev/disk/by-uuid/08992355-1404-44dc-9bb4-fd32f1d0b62d";
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/F54E-7011"; device = "/dev/disk/by-uuid/F54E-7011";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ]; options = ["fmask=0022" "dmask=0022"];
}; };
swapDevices = swapDevices = [{device = "/dev/disk/by-uuid/c9b7b195-d072-4574-8e39-a5e4f90ca84d";}];
[{ device = "/dev/disk/by-uuid/c9b7b195-d072-4574-8e39-a5e4f90ca84d"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's
@@ -40,12 +43,11 @@
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
boot.initrd.luks.devices."luks-d27fc6c5-7edd-4c18-ab70-3ca02a28abcc".device = boot.initrd.luks.devices."luks-d27fc6c5-7edd-4c18-ab70-3ca02a28abcc".device = "/dev/disk/by-uuid/d27fc6c5-7edd-4c18-ab70-3ca02a28abcc";
"/dev/disk/by-uuid/d27fc6c5-7edd-4c18-ab70-3ca02a28abcc";
nixpkgs.config.packageOverrides = pkgs: { nixpkgs.config.packageOverrides = pkgs: {
intel-vaapi-driver = intel-vaapi-driver =
pkgs.intel-vaapi-driver.override { enableHybridCodec = true; }; pkgs.intel-vaapi-driver.override {enableHybridCodec = true;};
}; };
hardware.opengl = { hardware.opengl = {
@@ -57,7 +59,7 @@
]; ];
}; };
environment.sessionVariables = { LIBVA_DRIVER_NAME = "iHD"; }; environment.sessionVariables = {LIBVA_DRIVER_NAME = "i965";};
hardware.facetimehd = { hardware.facetimehd = {
enable = true; enable = true;
@@ -74,7 +76,7 @@
''; '';
# This goes in the extraConfig section IdleAction=ignore # This goes in the extraConfig section IdleAction=ignore
}; };
environment.systemPackages = with pkgs; [ mbpfan thermald ]; environment.systemPackages = with pkgs; [mbpfan thermald];
boot.blacklistedKernelModules = [ "b43" "ssb" "brcmfmac" "brcmsmac" "bcma" ]; boot.blacklistedKernelModules = ["b43" "ssb" "brcmfmac" "brcmsmac" "bcma"];
} }

View File

@@ -1,10 +1,14 @@
{ config, pkgs, ... }: { {
nixpkgs.config.permittedInsecurePackages = [ "python-2.7.18.8" ]; config,
nixpkgs.config = { chromium = { enableWideVine = true; }; }; pkgs,
...
}: {
nixpkgs.config.permittedInsecurePackages = ["python-2.7.18.8"];
nixpkgs.config = {chromium = {enableWideVine = true;};};
users.users.user = { users.users.user = {
isNormalUser = true; isNormalUser = true;
description = "user"; description = "user";
extraGroups = [ "networkmanager" "wheel" "video" "libvirtd" ]; extraGroups = ["networkmanager" "wheel" "video" "libvirtd"];
packages = with pkgs; [ packages = with pkgs; [
# stuff needed by neovim # stuff needed by neovim
fzf fzf

View File

@@ -1,4 +1,8 @@
{ config, pkgs, ... }: { {
config,
pkgs,
...
}: {
services.syncthing = { services.syncthing = {
enable = true; enable = true;
openDefaultPorts = true; openDefaultPorts = true;
@@ -14,33 +18,30 @@
settings = { settings = {
devices = { devices = {
"phone" = { "phone" = {
id = id = "N3RII7R-4YOKJ46-HY6NSTD-TPE7SW4-N66CWVQ-J2JVW7E-NARRMBF-JG27YQ7";
"N3RII7R-4YOKJ46-HY6NSTD-TPE7SW4-N66CWVQ-J2JVW7E-NARRMBF-JG27YQ7";
}; };
"bigbox" = { "bigbox" = {
id = id = "RFFXZJI-HJTEDCU-M7MU3SW-M7DJK4U-MESRKYA-OGHYOSG-KNZO7JB-6LQ5VAE";
"RFFXZJI-HJTEDCU-M7MU3SW-M7DJK4U-MESRKYA-OGHYOSG-KNZO7JB-6LQ5VAE";
}; };
}; };
folders = { folders = {
"brain_zero" = { "brain_zero" = {
# Name of folder in Syncthing, also the folder ID # Name of folder in Syncthing, also the folder ID
path = "/home/user/brain_zero/"; # Which folder to add to Syncthing path = "/home/user/brain_zero/"; # Which folder to add to Syncthing
devices = [ "phone" ]; # Which devices to share the folder with devices = ["phone"]; # Which devices to share the folder with
ignores = ignores = [".obsidian/workspace-mobile.json" ".obsidian/workspace.json"];
[ ".obsidian/workspace-mobile.json" ".obsidian/workspace.json" ];
}; };
"brain_zero_readonly" = { "brain_zero_readonly" = {
# Name of folder in Syncthing, also the folder ID # Name of folder in Syncthing, also the folder ID
path = "/home/user/brain_zero/"; # Which folder to add to Syncthing path = "/home/user/brain_zero/"; # Which folder to add to Syncthing
type = "sendonly"; type = "sendonly";
devices = [ "bigbox" ]; # Which devices to share the folder with devices = ["bigbox"]; # Which devices to share the folder with
}; };
"puter_home" = { "puter_home" = {
path = "/home/user/"; path = "/home/user/";
type = "sendonly"; type = "sendonly";
devices = [ "bigbox" ]; devices = ["bigbox"];
ignores = [ ".*" "!.ssh/" ]; ignores = [".*" "!.ssh/"];
}; };
}; };
}; };

View File

@@ -1,8 +1,13 @@
{ config, pkgs, lib, ... }: { {
config,
pkgs,
lib,
...
}: {
environment.variables.EDITOR = "nvim"; environment.variables.EDITOR = "nvim";
users.users.user.shell = pkgs.bash; users.users.user.shell = pkgs.bash;
environment.shells = with pkgs; [ bash ]; environment.shells = with pkgs; [bash];
programs.bash = { programs.bash = {
interactiveShellInit = '' interactiveShellInit = ''
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]] if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
@@ -14,7 +19,7 @@
}; };
programs.fish.enable = true; programs.fish.enable = true;
environment.systemPackages = with pkgs; [ starship ]; environment.systemPackages = with pkgs; [starship];
programs.starship = { programs.starship = {
enable = true; enable = true;
settings = { settings = {

View File

@@ -1,5 +1,9 @@
{ config, pkgs, ... }: { {
programs.neovim = { defaultEditor = true; }; config,
pkgs,
...
}: {
programs.neovim = {defaultEditor = true;};
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
pciutils pciutils
btop btop