Compare commits

...

5 Commits

16 changed files with 57 additions and 49 deletions

View File

@@ -173,7 +173,7 @@ in
domain = "conference.xmpp.uninsane.org";
}
];
uploadHttp.domain = "upload.xmpp.uninsane.org";
httpFileShare.domain = "upload.xmpp.uninsane.org";
virtualHosts = {
# "Prosody requires at least one enabled VirtualHost to function. You can

View File

@@ -367,7 +367,7 @@ in
# "tdesktop" # broken on phosh
# "tokodon"
"tuba" # mastodon/pleroma client (stores pw in keyring)
# "v4l-utils" # for `media-ctl`; to debug cameras: <https://wiki.postmarketos.org/wiki/PINE64_PinePhone_(pine64-pinephone)#Cameras> (2025/07/16: disabled because broken cross build)
# "v4l-utils" # for `media-ctl`; to debug cameras: <https://wiki.postmarketos.org/wiki/PINE64_PinePhone_(pine64-pinephone)#Cameras>
"video-trimmer"
"vulkan-tools" # vulkaninfo
# "whalebird" # pleroma client (Electron). input is broken on phosh.
@@ -874,9 +874,9 @@ in
meson = {};
millipixels.packageUnwrapped = pkgs.millipixels.override {
v4l-utils = config.sane.programs.v4l-utils.packageUnwrapped; # necessary for cross compilation
};
# millipixels.packageUnwrapped = pkgs.millipixels.override {
# v4l-utils = config.sane.programs.v4l-utils.packageUnwrapped; # necessary for cross compilation
# };
millipixels.sandbox.method = null; #< TODO: sandbox
# actual monero blockchain (not wallet/etc; safe to delete, just slow to regenerate)

View File

@@ -10,12 +10,14 @@
# - `v4l2-ctl -d /dev/video1 --all` (front camera?)
# - `v4l2-ctl -d /dev/video2 --all` (rear camera?)
# - `v4l2-ctl --list-ctrls-menus -d /dev/video1` (show rotation/flips)
{ pkgs, ... }:
{ ... }:
{
sane.programs.v4l-utils = {
packageUnwrapped = pkgs.v4l-utils.override {
withGUI = false; #< XXX(2024-09-09): gui does not cross compile due to qtbase / wrapQtAppsHook
};
# packageUnwrapped = pkgs.v4l-utils.override {
# # XXX(2024-09-09): gui does not cross compile due to qtbase / wrapQtAppsHook
# # XXX(2025-08-06): v4l-utils cross compiles, thanks to <https://github.com/NixOS/nixpkgs/pull/429900>
# withGUI = false;
# };
sandbox.method = null; #< TODO: sandbox
};
}

View File

@@ -26,7 +26,7 @@ in
# TODO: upstream into nixpkgs. <repo:nixos/nixpkgs:pkgs/os-specific/linux/kernel/common-config.nix>
name = "fix-module-builtin-mismatch";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
# nixpkgs specifies `SUN8I_DE2_CCU = yes`, but that in turn requires `SUNXI_CCU = yes` and NOT `= module`
# symptom: config fails to eval
SUNXI_CCU = yes;

View File

@@ -78,7 +78,7 @@ in
{
name = "enable-libcamera-requirements";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
# 2024-11-28: speculatively enable these options which postmarketOS enabled, hoping they'll fixup libcamera/Snapshot app
# - <https://gitlab.com/postmarketOS/pmaports/-/merge_requests/5084/diffs>
# - <https://gitlab.com/postmarketOS/pmaports/-/issues/2787>

View File

@@ -529,7 +529,7 @@ linux.override {
# {
# name = "fix-compilation-specific-to-megi";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# ### BUILD FIXES, NOT SPECIFIC TO MY PREFERENCES
# #
# # disabling the sun5i_eink driver avoids this compilation error:
@@ -547,7 +547,7 @@ linux.override {
# this could be enabled for *all* systems, but i'm not sure i really want that.
name = "quality-of-life";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
# optimize for faster builds (measured 12m00s -> 10m45s)
# see <repo:kernel.org/linux:Documentation/admin-guide/quickly-build-trimmed-linux.rst>
# note that several options can re-enable DEBUG_KERNEL (such as DEBUG_LIST)
@@ -573,7 +573,7 @@ linux.override {
{
name = "fix-no-display";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
### RUNTIME FIXES AFTER <https://github.com/NixOS/nixpkgs/pull/298332>
# pmOS kernel config is in pmaports repo:
# - CONFIG_FB_SIMPLE=y
@@ -593,7 +593,7 @@ linux.override {
{
name = "enable-megi-modem-power";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
# enable /sys/class/modem-power, a thing specific to Megi's kernel/patches
MODEM_POWER = module;
};
@@ -602,13 +602,13 @@ linux.override {
# {
# name = "nixpkgs-config";
# patch = null;
# extraStructuredConfig = linux_latest.commonStructuredConfig;
# structuredExtraConfig = linux_latest.commonStructuredConfig;
# }
] ++ lib.optionals usePmosConfig [
{
name = "postmarketos-config";
patch = null;
extraStructuredConfig = builtins.removeAttrs
structuredExtraConfig = builtins.removeAttrs
(sane-kernel-tools.parseDefconfigStructuredNonempty linux-postmarketos-allwinner.defconfigStr)
([
# remove attrs which nixpkgs wants to set for itself, only because the kernel config options are so fucked that i can't figure out how to override things without breaking eval
@@ -674,7 +674,7 @@ linux.override {
{
name = "enable options for Pinephone";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
# VIDEO_SUNXI defaults to `n` since the driver is in staging (as of 2024-09-18)
VIDEO_SUNXI = yes;
# VIDEO_SUNXI_CEDRUS = module; #< implied by VIDEO_SUNXI
@@ -835,7 +835,7 @@ linux.override {
# {
# name = "enable options for libcamera development";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# # borrowed from postmarketOS, "to enable libcamera development"
# # pmaports commit f18c7210ab
# # DMABUF_HEAPS = yes;
@@ -857,7 +857,7 @@ linux.override {
{
name = "enable-rtw88-wifi-drivers";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
# default nixpkgs/pmos config enables RTW88, but not RTW88_8723CS.
# but the pinephone uses a 8723BS/8723CS chipset, so enable these
# and anything else that could possibly be needed, since these things are tangled.

View File

@@ -366,7 +366,7 @@ let
# # - https://discourse.nixos.org/t/the-correct-way-to-override-the-latest-kernel-config/533/9
# name = "linux-megous-defconfig";
# patch = null;
# extraStructuredConfig = config;
# structuredExtraConfig = config;
# };
in ((buildLinux {

View File

@@ -23,7 +23,7 @@ linux_latest.override {
# {
# name = "pmos-config";
# patch = null;
# extraStructuredConfig = builtins.removeAttrs
# structuredExtraConfig = builtins.removeAttrs
# linux-postmarketos-pinephonepro.structuredConfig
# [
# "BASE_SMALL" # pmos: =0 ???
@@ -67,7 +67,7 @@ linux_latest.override {
# {
# name = "add-removed";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# DRM_PANEL_HIMAX_HX8394 = module;
# DRM_PANEL_SIMPLE = module;
# };
@@ -77,7 +77,7 @@ linux_latest.override {
# necessary only if `preferBuiltin = false`
name = "fix-module-only";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
SUN8I_DE2_CCU = lib.mkForce module;
};
}
@@ -85,7 +85,7 @@ linux_latest.override {
# {
# name = "upgrade-builtins-to-module";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# CPU_FREQ_GOV_CONSERVATIVE = yes;
# CPUFREQ_DT = yes;
# CPUFREQ_DT_PLATDEV = yes;
@@ -127,7 +127,7 @@ linux_latest.override {
{
name = "misc-hw-fixes";
patch = null;
extraStructuredConfig = with lib.kernel; {
structuredExtraConfig = with lib.kernel; {
# XXX(2024-09-18): megapixels(-next) on OG PP fails to open the camera without this option:
ARM64_VA_BITS_48 = yes; #< 48 (not 52) bits for virtual addresses. the other bit widths (ARM64_VA*, ARM64_PA_*, PGTABLE_LEVELS) are then derived/implied same as pmos config
BACKLIGHT_CLASS_DEVICE = yes; #< required for display initialization on OG PP (adding "backlight" to initrd does not fix display)
@@ -137,7 +137,7 @@ linux_latest.override {
# {
# name = "reset-nixpkgs-overrides";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# # this is required for boot (but why??)
# ACPI_FPDT = lib.mkForce no;
@@ -191,7 +191,7 @@ linux_latest.override {
# # smallest observed non-bootable image: 71297536B
# name = "optimize-for-size";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE = no;
# CONFIG_CC_OPTIMIZE_FOR_SIZE = yes;
@@ -252,7 +252,7 @@ linux_latest.override {
# {
# name = "reset-automodules-overrides";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# # NR_CPUS = lib.mkForce (freeform "64");
# # RANDOM_KMALLOC_CACHES = lib.mkForce no;
# # HOTPLUG_PCI_PCIE = lib.mkForce no;
@@ -385,7 +385,7 @@ linux_latest.override {
# # so just don't build these here, and rely wholly on my out-of-tree modules.
# name = "make-module-for-out-of-tree";
# patch = null;
# extraStructuredConfig = with lib.kernel; {
# structuredExtraConfig = with lib.kernel; {
# # MFD_RK8XX = no;
# # MFD_RK8XX_I2C = no;
# # MFD_RK8XX_SPI = no; #< necessary for MFD_RK8XX=... to apply

View File

@@ -14,8 +14,8 @@
mkNixpkgs ? import ./mkNixpkgs.nix {},
}:
mkNixpkgs {
rev = "b65adef5fe1f68db0bbd27dbb1d5f779805c2b8b";
sha256 = "sha256-P+QnQOEh8n+4terom/1ZijQYgv4SnrFLfRzIcFzT1MI=";
version = "unstable-2025-08-05";
rev = "c2ae88e026f9525daf89587f3cbee584b92b6134";
sha256 = "sha256-erbiH2agUTD0Z30xcVSFcDHzkRvkRXOQ3lb887bcVrs=";
version = "unstable-2025-08-06";
branch = "master";
}

View File

@@ -45,6 +45,12 @@ in
# TODO: enable, once i can tolerate a mass rebuild
# (fetchpatch' {
# # 2025-08-06: merged into staging
# name = "v4l-utils: fix cross-compilation";
# prUrl = "https://github.com/NixOS/nixpkgs/pull/429900";
# hash = "sha256-oH9jTG38mWpjwf/LH3MTCrBm2NC4WTRPki2mUhCc5WQ=";
# })
# (fetchpatch' {
# name = "libpcap: enable dbus, rdma, bluetooth features";
# prUrl = "https://github.com/NixOS/nixpkgs/pull/429225";
# hash = "sha256-cALgj+7eXd3H4WAmW6CIcxWRC3D4PoY2PWNsDxK+G9g=";

View File

@@ -2,8 +2,8 @@
mkNixpkgs ? import ./mkNixpkgs.nix {},
}:
mkNixpkgs {
rev = "fc10bffd8eea7cd24f73ea2be7c38a1ff549dcc1";
sha256 = "sha256-vLEx/DDT+IWB0zGX4Le5Fsic3rCuq2jZtAeespjWBqY=";
version = "unstable-2025-08-05";
rev = "5da2bc6cb2ef285e10507d34d0481658cfca8f45";
sha256 = "sha256-E6fJqlTrOWmMS1rjfWF1uwcYWHU3gAXK2C6xmTPx6Ew=";
version = "unstable-2025-08-06";
branch = "staging-next";
}

View File

@@ -2,8 +2,8 @@
mkNixpkgs ? import ./mkNixpkgs.nix {},
}:
mkNixpkgs {
rev = "08861d03f89a3d908f49a9e64bdc8d7be7c1a7bf";
sha256 = "sha256-jCDhpGW2ZI6B9FCzmXuv30/A24ld20vjxwX5MPK4FLE=";
version = "unstable-2025-08-05";
rev = "13e07277976e41011caf25fe62201e9fb6de29df";
sha256 = "sha256-aYWjNYBfusR2CMhKNOWhQ1CDsqS+Yc6xvmdTNSZP/0Q=";
version = "unstable-2025-08-06";
branch = "staging";
}

View File

@@ -7,8 +7,8 @@ let
src = fetchFromGitHub {
owner = "nix-community";
repo = "nixpkgs-wayland";
rev = "2cbbaf857e0fc5dc13796157ed936db202799d56";
hash = "sha256-rgcT4pxXOrkn+K+kHtLtVWBJ7odNQeI1lyZ9LqyekzQ=";
rev = "886afff215c4504c46ec840e283cedb7c79870bb";
hash = "sha256-0edf+wA3aFEMD3Xn0FhveBcE1UsAlNsIvWZvIAoknKk=";
};
flake = import "${src}/flake.nix";
evaluated = flake.outputs {
@@ -25,7 +25,7 @@ let
in src.overrideAttrs (base: {
# attributes required by update scripts
pname = "nixpkgs-wayland";
version = "0-unstable-2025-08-05";
version = "0-unstable-2025-08-06";
src = src;
# passthru only nixpkgs-wayland's own packages -- not the whole nixpkgs-with-nixpkgs-wayland-as-overlay:

View File

@@ -12,14 +12,14 @@
stdenvNoCC.mkDerivation {
pname = "opencellid";
version = "0-unstable-2025-08-05";
version = "0-unstable-2025-08-06";
src = fetchFromGitea {
domain = "git.uninsane.org";
owner = "colin";
repo = "opencellid-mirror";
rev = "b5e8b46dba77ea36a9332855e1a29ab8b4d072b3";
hash = "sha256-5Hs5QYczvwPIZkwfRD6fwt7sriHRXCcveOgNu92+2hc=";
rev = "7138c8452ad89f2d83725d05c97b21957f7aaef5";
hash = "sha256-t4v6Nr3M8Qu2TI6Y3FERBHNul3ZxPbUkp7bmh8BXa9I=";
};
dontBuild = true;

View File

@@ -22,7 +22,7 @@ lib.makeScope newScope (self: with self; {
# parseDefconfig: given the entire text of a defconfig file
# parse it into an attrset usable by the nixpkgs kernel config tools.
# this is not meant for `extraStructuredConfig`, but stuff further downstream.
# this is not meant for `structuredExtraConfig`, but stuff further downstream.
# results are like ` { CONFIG_FOO = "y"; CONFIG_FOO_BAR = "128"; }`
parseDefconfig = wholeStr: let
lines = lib.splitString "\n" wholeStr;

View File

@@ -6,12 +6,12 @@
}:
stdenvNoCC.mkDerivation {
pname = "uassets";
version = "0-unstable-2025-08-05";
version = "0-unstable-2025-08-06";
src = fetchFromGitHub {
owner = "uBlockOrigin";
repo = "uAssets";
rev = "5f75dc9eda9b00f4d07fae2698de692d0c7feea8";
hash = "sha256-AyEXBlp71FltvrohFJRjpdxlUnN62aXsr5gt+4koTWw=";
rev = "b099383ce8ac63693dab6e69708d88242ae58111";
hash = "sha256-ExM9gZlunBmT2b0DvxfswCLetrDd588Mcjvgk+FnK8A=";
};
dontBuild = true;