Package Details: pipeline-gtk 2.6.1-1

Git Clone URL: https://aur.archlinux.org/pipeline-gtk.git (read-only, click to copy)
Package Base: pipeline-gtk
Description: Watch YouTube and PeerTube videos in one place
Upstream URL: https://gitlab.com/schmiddi-on-mobile/pipeline
Licenses: GPL-3.0-or-later
Conflicts: tubefeeder
Submitter: julianfairfax
Maintainer: yochananmarqos
Last Packager: yochananmarqos
Votes: 4
Popularity: 0.101226
First Submitted: 2023-12-31 10:37 (UTC)
Last Updated: 2025-06-28 16:12 (UTC)

Latest Comments

1 2 3 4 Next › Last »

BlackCherry commented on 2025-06-22 21:54 (UTC)

@yochananmarqos yeah your right, sorry xp. Now it's working perfectly

yochananmarqos commented on 2025-06-22 21:44 (UTC) (edited on 2025-06-22 21:45 (UTC) by yochananmarqos)

@BlackCherry: Oh my... maybe you should update your toolchain?

Cargo (1.84.0 (66221abde 2024-11-19)

Gee whiz, folks. Why would you have rustup installed if you don't bother updating it?

BlackCherry commented on 2025-06-22 21:17 (UTC)

@taivlam is right, I waited long enough to get the repo successfully updated, altought now I get this error:

error: failed to parse manifest at `/home/cherry/.cargo/registry/src/index.crates.io-6f17d22bba15001f/cfg-expr-0.20.0/Cargo.toml`

Caused by:
  feature `edition2024` is required

  The package requires the Cargo feature called `edition2024`, but that feature is not stabilized in this version of Cargo (1.84.0 (66221abde 2024-11-19)).
  Consider trying a newer version of Cargo (this may require the nightly release).
  See https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#edition-2024 for more information about the status of this feature.
==> ERROR: A failure occurred in prepare().
    Aborting...
error: failed to build 'pipeline-gtk-2.4.1-2':
error: packages failed to build: pipeline-gtk-2.4.1-2

taivlam commented on 2025-06-21 12:18 (UTC) (edited on 2025-06-21 12:19 (UTC) by taivlam)

First, an update: I opened Pipeline after installing the latest version and now playing PeerTube videos works!

Second, I also noticed that the process takes some time (but isn't actually stuck? I had to give my computer at 1-5 minutes) when installing the package at this line in the prepare() stdout:

    Updating git submodule `https://gitlab.freedesktop.org/gstreamer/gir-files-rs`

je-vv commented on 2025-06-14 23:23 (UTC) (edited on 2025-06-14 23:37 (UTC) by je-vv)

BTW, the stop from the PKGBULD failing is:

cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"

As you might guess it's trying to get all the dependencies, but locked. I tried without the "locked" arg, and the same... Perhaps @fossdd knows better since I'm not familiar with meson, arch-meson, neither the requirement to pre-fetch the sources... Not sure if this is the way upstream supports building BTW, so it might be counterintuitive for upstream to deal with Arch way of doing it, :(

je-vv commented on 2025-06-14 22:45 (UTC)

I noticed that as well @BlackCherry, and I know it won't help, but it was building fine couple of days ago. Can you file an upstream issue?

The rust cargo inter dependency on these "ports" to rust of everything is plain crazy. "pipeline-gtk" itself doesn't have this dependency, but one of the cargo packages it depends on does:

% pwd
<...>/pipeline-2.4.1
% grep -r gir-files-rs
%

Now the repo exists:

https://gitlab.freedesktop.org/gstreamer/gir-files-rs

However who knows what strict commit is being referred, which could have been pruned from that repo.

Definitely as shown before, this really ought an upstream bug, so an upgrade on the dependencies is done, which could carry an upgrade on their own dependencies.

The more I realized how ugly cargo works, the more I like the efforts from Guix to make the dependencies explicit, and better yet to use shared libraries (cargo just build huge bloated binaries with everything within), but the worse is handling the Cargo.lock stuff, all that becomes a nightmare that nobody seems to vocalize because it's rust, and it has a native packager. I believe sooner or later conscious people will start vocalizing how crazy cargo mess is.

Sorry for the rust/cargo runt, in the end what matters is that this is not directly visible on the "pipeline" code, it's a mess with its cargo dependencies, and the best is for the pipeline developer to decide what's best for building it.

BlackCherry commented on 2025-06-14 19:33 (UTC)

Why is the process stuck at updating a git submodule?

:: Downloading PKGBUILDs...
 PKGBUILDs up to date
 nothing new to review
fetching devel info...
==> Making package: pipeline-gtk 2.4.1-2 (sáb 14 jun 2025 21:26:33)
==> Retrieving sources...
  -> Found pipeline-2.4.1.tar.gz
==> Validating source files with sha256sums...
    pipeline-2.4.1.tar.gz ... Passed
==> Making package: pipeline-gtk 2.4.1-2 (sáb 14 jun 2025 21:26:34)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found pipeline-2.4.1.tar.gz
==> Validating source files with sha256sums...
    pipeline-2.4.1.tar.gz ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Extracting pipeline-2.4.1.tar.gz with bsdtar
==> Starting prepare()...
    Updating crates.io index
    Skipping git submodule `https://github.com/gtk-rs/gir` due to update strategy in .gitmodules
    Updating git submodule `https://github.com/gtk-rs/gir-files`
    Updating git submodule `https://gitlab.freedesktop.org/gstreamer/gir-files-rs`

I've tried to delete the clone cache and redo the build, but the problem still the same

je-vv commented on 2025-06-05 02:31 (UTC)

This would work as a patch for the PKGBUILD:

diff --git i/PKGBUILD w/PKGBUILD
index ba5b96c..11fbbd6 100644
--- i/PKGBUILD
+++ w/PKGBUILD
@@ -8,7 +8,7 @@ pkgdesc="Watch YouTube and PeerTube videos in one place"
 arch=("x86_64" "aarch64" "riscv64")
 url="https://gitlab.com/schmiddi-on-mobile/pipeline"
 license=("GPL-3.0-or-later")
-depends=("libadwaita" "libclapper" "libclapper-gtk" "gst-plugins-gtuber")
+depends=("libadwaita" "libclapper" "libclapper-gtk" "clapper-enhancers")
 makedepends=("blueprint-compiler" "cargo" "meson")
 conflicts=("tubefeeder")
 replaces=("tubefeeder")

je-vv commented on 2025-05-30 06:33 (UTC) (edited on 2025-05-30 09:34 (UTC) by je-vv)

BTW, the embeded clapper is not separate, is part of the rust huge static bin, and feedtuber/pipeline depends on the rust clapper, :(

   Compiling tubefeeder v2.3.0 (/home/vasqueja/.pkgs/src/laur/pipeline-gtk/src/pipeline-2.3.0)
error[E0432]: unresolved import `clapper`

And the git commit used is already top of main, so there's no new commit on the rust clapper repo one can try, :(

So, no luck. I still think the best is to have as a dep clapper-enhancers instead of gtuber. Either way youtube videos can't be seen, and although using clapper-enhancers still doesn't make them work, I guess it's still on development.

The best option keeps being an external player, and yt-dlp as external downloader, which is pretty cool and still low on resources.

je-vv commented on 2025-05-30 05:36 (UTC) (edited on 2025-05-30 06:27 (UTC) by je-vv)

Found it, gtuber also provides peertube support, but the AUR package doesn't enable it:

    # Plugins
    -D bilibili=enabled
    -D crunchyroll=disabled # broken
    -D invidious=disabled # broken
    -D lbry=enabled
    -D niconico=enabled
    -D peertube=disabled # broken
    -D piped=disabled # broken
    -D reddit=enabled
    -D twitch=enabled
    -D youtube=enabled

It says peertube is disabled given it's broken, but I don't know where that is coming from, I just built it with peertube enabled and it worked quite well. I'm happy with it. Perhaps you can try it.

So that was it. Building gtuber enabling the peertube plugin just works out of the box.

On the other hand, pipeline-gtk comes with an embedded clapper player. Itself alone it doesn't work, it requires clapper-enhancers which depends on yt-dlp BTW, but the only time I saw it working, I didn't see yt-dlp being called, and it hadn't worked back.

The sad thing is that on youtube videos, it hangs like in an infinnite loop, it doesn't stop by itself. One can get out of it ant try another video, but that doesn't work. But if one doesn't attempt youtube videos, only peertube ones for example, no issues.

The gtuber developer is the same clapper developer, and he cleverly deprecated and archived gtuber in favor of his clapper player.

There's no need to install the Arch clapper, since pipeline comes with one embedded and I guess uses that one. I haven't tried attempting to remove the embedded one yet, so perhaps the Arch one works better (more up to date).

All in all, maybe gtuber is better, since it fails immediately on youtube videos rather than getting it into an infinite loop, but it's deprecated. Perhaqps the best is to remove it as a dep and rather use clapper-enhancers as a dep. But neither works with youtube, and gtuber requires modifying the PKGBUILD.

The best option currently, and the one I used is an external player (mpv my preferred one, pretty light BTW) and yt-dlp as the external downloader. But I'll try removing the embedded clapper if easy to do, and install the Arch one to see how it works.

Hope this helps.