NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.44k stars 13.64k forks source link

gstreamer-plugins-base: depends on xext #102023

Closed paralin closed 3 years ago

paralin commented 3 years ago

Describe the bug

Build fails for gst-plugins-base - dependency "xext" not found:

Run-time dependency vorbisidec found: YES 1.2.1
Header <vorbis/codec.h> has symbol "vorbis_synthesis_restart" : YES 
Run-time dependency xext found: NO (tried pkgconfig)

sys/meson.build:4:2: ERROR: Dependency "xext" not found, tried pkgconfig

A full log can be found at /build/gst-plugins-base-1.16.2/build/meson-logs/meson-log.txt
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Looking for inet_ntop
  CC       test-proxy-helpers.o
builder for '/nix/store/g5chrhxislqq6lwvn3fhg46raqcmmra1-gst-plugins-base-1.16.2.drv' failed with exit code 1

To Reproduce Steps to reproduce the behavior:

  1. Install on rpi 4
  2. Switch to configuration:
{ config, pkgs, lib, ... }:

{
  imports = [
    ./hardware-configuration.nix
    <nixpkgs/nixos/modules/virtualisation/docker-image.nix>
    <nixpkgs/nixos/modules/installer/cd-dvd/channel.nix>
  ];

  documentation.doc.enable = false;
  networking.firewall.enable = false;
  networking.interfaces.eth0.useDHCP = false;
  networking.nameservers = [ "1.1.1.1" "8.8.8.8" ];
  networking.networkmanager.enable = false;
  networking.resolvconf.dnsExtensionMechanism = false;
  networking.useDHCP = false;
  networking.wireless.enable = false;
  security.audit.enable = false;
  security.sudo.enable = true;
  systemd.enableEmergencyMode = false;
  systemd.services.rescue.enable = false;

  boot.isContainer = true;
  boot.loader = {
    systemd-boot.enable = false;
    efi.canTouchEfiVariables = false;
  };

  # List packages installed in system profile. To search by name, run:
  # $ nix-env -qaP | grep wget
  environment.systemPackages = with pkgs; [
    bashInteractive
    cacert
    nix
    xorg.libXext
    tree
    wget
    git
    gnupg
    chromium
    emacs
    curl
    tmux
    gnumake
    unzip
    imagemagick
    vlc
    ag
    xclip
    lightlocker
    gparted
    uget
    blueman
    pavucontrol
    ghostscript
    zuki-themes
    faba-icon-theme
    faba-mono-icons
    xfce.xfce4notifyd

    go
    openjdk
    nodejs
  ];           

  nixpkgs.config = {
    allowUnfree = true; # Allow "unfree" packages.
  };

  environment.variables = { GOROOT = [ "${pkgs.go.out}/share/go" ]; };

  environment.pathsToLink = [
    "/share/xfce4"
    "/share/themes"
    "/share/mime"
    "/share/desktop-directories"
    "/share/gtksourceview-2.0"
  ];

  hardware.opengl = {
    enable = true;
    setLdLibraryPath = true;
    package = pkgs.mesa_drivers;
  };

  services.xserver.enable = true;
  services.xserver.layout = "us";

  # modesetting: for fkms or kms vc4 drivers
  services.xserver.videoDrivers = [ "modesetting" ];
  # fbdev: for no GPU driver enabled.
  # services.xserver.videoDrivers = [ "fbdev" ];

  # Enable Lightdm
  services.xserver.displayManager.lightdm = {
    enable = true;
    greeters.gtk = {
      theme.package = pkgs.zuki-themes;
      theme.name = "Zukitre";
    };
  };

  services.xserver.desktopManager.xfce = {
    enable = true;
  };
}

Expected behavior

Expected build to succeed - probably, xext needs to be added as a dependency of gst-plugins-base.

Notify maintainers

@matthewbauer @nh2

Metadata

Maintainer information:

# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:
nh2 commented 3 years ago

I don't understand why it fails for you.

It works for the normal aarch64 Hydra build: The Build 129308524 of job nixos:release-20.09-aarch64:nixpkgs.gst_all_1.gst-plugins-base.aarch64-linux (full build output) has:

Using 'PKG_CONFIG_PATH' from environment with value: '...:/nix/store/dxynnzasg2gvcdb0q8agb69mih1wzyp1-libXext-1.3.4-dev/lib/pkgconfig:...`
...
Run-time dependency xext found: YES 1.3.4

Your PR #102032 makes sense to me anyway (xext is a dependency of gst-plugins-base, so it's good to list it explicitly), but it'd be good to understand why your build is different to the Hydra build.

paralin commented 3 years ago

Not sure, I did it from scratch originally with nix-build, then am doing a "switch" from the target system.

nh2 commented 3 years ago

Your PR #102032 makes sense to me anyway

Merged, thus closing this.

Because it was merged to staging, it will take a while before the fix appears in master. If it reappears after that, please (ask to) reopen.