Skip to content
This repository was archived by the owner on Jun 2, 2025. It is now read-only.

OpenGL can't be installed due to panfork/mesa repository absence. #32

Description

@HeroBrine1st

Hi

First, the actual issue:

This happens when you add hardware.opengl.enable = true to system configuration.

error: builder for '/nix/store/xy5dp5aggr6i803ib5z5vc2895hrwbj1-source.drv' failed with exit code 1;
       last 7 log lines:
       >
       > trying https://gitlab.com/api/v4/projects/panfork%2Fmesa/repository/archive.tar.gz?sha=120202c675749c5ef81ae4c8cdc30019b4de08f4
       >   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
       >                                  Dload  Upload   Total   Spent    Left  Speed
       >   0    35    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
       > curl: (22) The requested URL returned error: 404
       > error: cannot download source from any mirror
       For full logs, run 'nix log /nix/store/xy5dp5aggr6i803ib5z5vc2895hrwbj1-source.drv'.
error: 1 dependencies of derivation '/nix/store/gvhj13xj5slchablw89y28gfmpbwzk3y-mesa-panfork-23.0.0-panfork.drv' failed to build
error: 1 dependencies of derivation '/nix/store/2iilbimbzvnby4k82csvb73a7g4ibkxw-opengl-drivers.drv' failed to build
error: 1 dependencies of derivation '/nix/store/mzy6qgbn8za6hjfbj4f8kzg0hjpzb9z7-nixos-tmpfiles.d.drv' failed to build
error: 1 dependencies of derivation '/nix/store/wzpan2h56gnh04ppfcxg30zqqaf2rwlj-tmpfiles.d.drv' failed to build
error: 1 dependencies of derivation '/nix/store/mzz37bhkxq7sds45r6gxp97z82b2l97r-etc.drv' failed to build
error: 1 dependencies of derivation '/nix/store/l3d3mq3vfh2dk9ajad29phgvlg0ahs93-nixos-system-opi5-23.11.20240301.79baff8.drv' failed to build

Aforementioned file is required here:

.overrideAttrs (_: {
pname = "mesa-panfork";
version = "23.0.0-panfork";
src = pkgs.fetchFromGitLab {
owner = "panfork";
repo = "mesa";
rev = "120202c675749c5ef81ae4c8cdc30019b4de08f4"; # branch: csf
hash = "sha256-4eZHMiYS+sRDHNBtLZTA8ELZnLns7yT3USU5YQswxQ0=";
};
})

To be clear, I use this flake as input for my flake and installed NixOS directly on SSD.

I.e. I installed it like that
{
  description = "NixOS configuration";

  inputs = {
    unstable.url = "nixpkgs/nixos-unstable";
    nixpkgs.url = "nixpkgs/nixos-23.11";
    nixos-rk3588.url = "github:ryan4yin/nixos-rk3588?rev=349f39dcaafeb41250544bcc066db8668a7762ce";
  };

  outputs = { nixpkgs, nixos-rk3588, ... }: let
    # using the same nixpkgs as nixos-rk3588 to utilize the cross-compilation cache.
    inherit (nixos-rk3588.inputs) nixpkgs;
    system = "aarch64-linux";
  in {
    nixosConfigurations = {
      opi5 = nixpkgs.lib.nixosSystem {
        inherit system;
        specialArgs = {
          rk3588 = { 
            inherit nixpkgs; 
            pkgsKernel = import nixpkgs { 
              inherit system;
            }; 
          };
        };

        modules = [
          nixos-rk3588.nixosModules.orangepi5.core
#          nixos-rk3588.nixosModules.orangepi5.sd-image
          ./system/configuration.nix
          ./system/hardware-configuration.nix
        ];
      };
    };
  };
}

And configuration/hardware configuration is just like on flakeless system.
(P.s. I'm new to NixOS, I have been installing this flake for 2 days (mostly due to 5 SD cards that have died in process) but it does work normally for my "home enterprise")


Second, my background research about this issue

Looks like panfork/mesa is gone without any information about that. After two days of searching I found this PR which explains almost everything.

Basically, panfork/mesa is gone due to personal nature of its maintainer. Also, AUR package mesa-panfork-git was available yesterday but is deleted today. Looks like panfork removal is just started so that I'm first to notice it.

There's also tsukumijima/libmali-rockchip that is mentioned in jellyfin PR. Some parts of it are probably needed for this flake to work with mainline Mesa, because Mesa probably already supports it. Again, probably - I'm a total noob in such hardware. I simply got excited that there's a working ffmpeg included in nightly jellyfin and now I'm frustrated.

And also there's a soft fork of panfork/mesa on github. I don't trust that and I'm honestly pretty suspicious of this fork, but seems like it is the same exact code and you can swap it clean and it'll work.

I leave this for other people's time sake for now.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions