Conversation
|
I did not enable Also please note that 1.15 is an unstable development branch for 1.16 stable release. |
@jtojnar That makes sense; the PR doesn't change this, it is still optional.
Oops OK. Let's wait until 1.16 before continuing with this then. |
|
The removed patches come from https://bugzilla.gnome.org/show_bug.cgi?id=794856 and have been committed. |
@jtojnar Thanks! I ticked off the bullet point in the issue description based on this feedback.
We will also want to do a closure size check on the added I think it makes sense that it'll increase and will likely be worth it, as for end users nothing is more annoying than a gstreamer plugin but it not working on your machine because the distro hasn't enabled it, and Also, I wouldn't be opposed to introducing feature flags as arguments to the |
|
115.2 was released, 1.16 in few weeks: https://gstreamer.freedesktop.org/news/#2019-02-27T10:00:00Z |
|
1.16 was released. I've updated the PR with another commit to update to 1.16 and fix a few build errors. I've also made an upstream PR to fix a script not being executable, which broke the build: |
|
Let's see if this works: @GrahamcOfBorg build gst_all_1 |
|
@GrahamcOfBorg build gst_all_1 |
7750c09 to
d563757
Compare
|
@GrahamcOfBorg build gst_all_1 |
|
I've backed out the evaluation fixes Darwin out of this PR, as that isn't really related to the upgrade, and will handle those with a separate branch. If ofborg goes green, this is good to merge from my side. |
|
Dependency changes described in release notes do not affect us. What is up with ffmpeg? And do we care about the rust bindings? |
Thanks for checking!
I've updated
To my knowledge they aren't packaged in nixpkgs yet. I'll leave that to somebody else, as I have no experience with packaging Rust for nixpkgs, and care mainly about the update to 1.16 and the improved meson build system I've added in this PR. |
|
@jtojnar Good to go? |
|
This pull request has been mentioned on Nix community. There might be relevant details there: |
During the 1.14 -> 1.15 upgrade, lots of stuff stopped working because
gstreamer changed what features are enabled by default and which ones are
automatically turned on/off via pkgconfig dependency detection.
This resulted in the `gstreamer` ("core" attribute in nixpkgs) package
to have only 15 of its previous 163 build targets enabled, and downstream
packages breaking correspondingly.
To ease maintainability and to ensure users will find the expected features
available (and when not, will see in the nix file why not), we now pass
the `-Dauto_features=enabled` Meson build flag to all gstreamer builds,
which sets all `auto` dependencies to `enabled`, and we explicitly disable
those that we can't build.
This means in particular that `gst-plugins-bad` now has vastly more integrations
(namely all for which nixpkgs has libraries available).
Changes needed: * core: dbghelp disabled as it's not needed * core: Fixed script not being executable and skipped by patchShebangs * base: gtk_doc disabled because of wayland symbol error * ges: Patch removed that was merged upstream: https://bugzilla.gnome.org/show_bug.cgi?id=794856#c16
|
@GrahamcOfBorg build gst_all_1 |
We disabled them by default when they were introduced in NixOS#42994 but enabling them probably makes more sense: NixOS#54398 NixOS#63491
|
This pull request has been mentioned on Nix community. There might be relevant details there: |
|
This pull request has been mentioned on Nix community. There might be relevant details there: |
Motivation for this change
The latest gstreamer versionThe current gstreamer development version, leading up to the next to-be-released 1.16 stable version. Already doing some work here so we have less work to do when 1.16 comes out.Edit: This is now, and the PR has been updated.
Copying an important part of the commit message:
During the 1.14 -> 1.15 upgrade, lots of stuff stopped working because gstreamer changed what features are enabled by default and which ones are automatically turned on/off via pkgconfig dependency detection.
This resulted in the
gstreamer("core" attribute in nixpkgs) package to have only 15 of its previous 163 build targets enabled, and downstream packages breaking correspondingly.To ease maintainability and to ensure users will find the expected features available (and when not, will see in the nix file why not), we now pass the
-Dauto_features=enabledMeson build flag to all gstreamer builds, which sets allautodependencies toenabled, and we explicitly disable those that we can't build .This means in particular that
gst-plugins-badnow has vastly more integrations (namely all for which nixpkgs has libraries available).@nh2's notes while working on this (for posterity)
See e.g. https://lists.freedesktop.org/archives/gstreamer-bugs/2018-August/223857.html where they say
gstreamer-check-1.0.pcnot found (and indeed it's not there)-Dcheck=enabledmeson flag, see https://github.com/GStreamer/gstreamer/blob/6ea4380230d1cca1d63196dfbd753af887b8b241/pkgconfig/meson.build#L32coreconfigure output:elfutilsdep which provideslibdwcoreconfigure output:-Build targets in project: 163
+Build targets in project: 15
gst-validatebuild complains thatGstPbutils-1.0.gircouldn't be found /GEN'd even though it sayschecking for GST_PBUTILS... yesbeforecoreconfigure output:Program g-ir-scanner skipped: feature introspection disabledThings done
sandboxinnix.confon non-NixOS)nix-shell -p nox --run "nox-review wip"./result/bin/)nix path-info -Sbefore and after)Tested via:
NIX_PATH=nixpkgs=. nix-shell -p gst_all_1.gstreamer -p gst_all_1.gst-plugins-good -p gst_all_1.gst-plugins-base -p gst_all_1.gst-plugins-bad -p gst_all_1.gst-plugins-ugly -p gst_all_1.gst-libav -p gst_all_1.gst-rtsp-server -p gst_all_1.gst-validate -p gst_all_1.gst-vaapiCC @matthewbauer
TODO
gst-plugins-badintegrations work on Darwin, make those conditional that don't