parabolic: 2025.6.0 → 2025.8.1 (#430728)
This commit is contained in:
@@ -1,11 +1,12 @@
|
||||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
cmake,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libmaddy-markdown";
|
||||
version = "1.6.0";
|
||||
|
||||
@@ -16,17 +17,9 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-WMueY199ngw9BtHSY8zypfPZjWaQsSLUx8FDfQbBt5g=";
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
dontConfigure = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/include/maddy
|
||||
install -Dm444 include/maddy/* -t $out/include/maddy
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
openssl,
|
||||
sqlcipher,
|
||||
boost,
|
||||
cpr,
|
||||
curl,
|
||||
glib,
|
||||
libsecret,
|
||||
@@ -19,13 +20,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libnick";
|
||||
version = "2025.6.1";
|
||||
version = "2025.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NickvisionApps";
|
||||
repo = "libnick";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-Ir2Jke1zK4pKldQJHaT0Ju0ubz7H6nx16hDNl6u48Ck=";
|
||||
hash = "sha256-LgvU5a3W5Oii6pRAAKZo28yOyPRUMjxwEXDZ2jXJPGM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -39,17 +40,18 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
libmaddy-markdown
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isUnix [
|
||||
glib
|
||||
openssl
|
||||
]
|
||||
++ lib.optional stdenv.hostPlatform.isWindows sqlcipher;
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
curl
|
||||
cpr
|
||||
libsecret
|
||||
libmaddy-markdown
|
||||
sqlcipher
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
|
||||
@@ -18,29 +18,21 @@
|
||||
wrapGAppsHook4,
|
||||
libxmlxx5,
|
||||
blueprint-compiler,
|
||||
qt6,
|
||||
qlementine,
|
||||
qlementine-icons,
|
||||
yt-dlp,
|
||||
ffmpeg,
|
||||
aria2,
|
||||
nix-update-script,
|
||||
uiPlatform ? "gnome",
|
||||
}:
|
||||
assert lib.assertOneOf "uiPlatform" uiPlatform [
|
||||
"gnome"
|
||||
"qt"
|
||||
];
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "parabolic";
|
||||
version = "2025.6.0";
|
||||
version = "2025.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NickvisionApps";
|
||||
repo = "Parabolic";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-Osfj/GaD4t85ZYnlFDqgHhLJLA8VvgqtHEJN8bn0SxI=";
|
||||
hash = "sha256-Xft9yqkJzWu4eGPDtRl4tV4594HjJp17Osnv0kG0IMk=";
|
||||
};
|
||||
|
||||
# Patches desktop file/dbus service bypassing wrapped executable
|
||||
@@ -52,6 +44,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
substituteInPlace "resources/linux/org.nickvision.tubeconverter.service.in" \
|
||||
--replace-fail "@CMAKE_INSTALL_FULL_LIBDIR@/@PROJECT_NAME@/@OUTPUT_NAME@" \
|
||||
"@CMAKE_INSTALL_FULL_BINDIR@/@PROJECT_NAME@"
|
||||
''
|
||||
# Ensure that users are not downloading vendored versions of yt-dlp
|
||||
# outside of nixpkgs
|
||||
+ ''
|
||||
substituteInPlace "libparabolic/src/models/downloadmanager.cpp" \
|
||||
--replace-fail "m_ytdlpManager.checkForUpdates();" \
|
||||
""
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -62,66 +61,39 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
itstool
|
||||
yelp-tools
|
||||
desktop-file-utils
|
||||
]
|
||||
++ lib.optionals (uiPlatform == "gnome") [
|
||||
wrapGAppsHook4
|
||||
blueprint-compiler
|
||||
glib
|
||||
shared-mime-info
|
||||
]
|
||||
++ lib.optional (uiPlatform == "qt") qt6.wrapQtAppsHook;
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libnick
|
||||
boost
|
||||
]
|
||||
++ lib.optionals (uiPlatform == "qt") [
|
||||
qt6.qtbase
|
||||
qt6.qtsvg
|
||||
qlementine
|
||||
qlementine-icons
|
||||
]
|
||||
++ lib.optionals (uiPlatform == "gnome") [
|
||||
glib
|
||||
gtk4
|
||||
libadwaita
|
||||
libxmlxx5
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeFeature "UI_PLATFORM" uiPlatform)
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
dontWrapQtApps = true;
|
||||
|
||||
preFixup =
|
||||
lib.optionalString (uiPlatform == "gnome") ''
|
||||
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||
''
|
||||
+ lib.optionalString (uiPlatform == "qt") ''
|
||||
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
|
||||
''
|
||||
+ ''
|
||||
makeWrapperArgs+=(--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
aria2
|
||||
ffmpeg
|
||||
yt-dlp
|
||||
]
|
||||
})
|
||||
|
||||
wrapProgram $out/bin/org.nickvision.tubeconverter \
|
||||
''${makeWrapperArgs[@]}
|
||||
'';
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
aria2
|
||||
ffmpeg
|
||||
yt-dlp
|
||||
]
|
||||
})
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Graphical frontend for yt-dlp to download video and audio";
|
||||
longDescription = ''
|
||||
Parabolic is a user-friendly frontend for `yt-dlp` that supports
|
||||
many features including but limited to:
|
||||
Parabolic is a user-friendly adwaita application for `yt-dlp`
|
||||
that supports many features including but not limited to:
|
||||
|
||||
- Downloading and converting videos and audio using ffmpeg.
|
||||
- Supporting multiple codecs.
|
||||
- Offering YouTube sponsorblock support.
|
||||
@@ -129,11 +101,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
- Downloading metadata and video subtitles.
|
||||
- Allowing the use of `aria2` for parallel downloads.
|
||||
- Offering a graphical keyring to manage account credentials.
|
||||
- Being available as both a Qt and GNOME application.
|
||||
|
||||
By default, the GNOME interface is used, but the Qt interface
|
||||
can be built by overriding the `uiPlatform` argument to `"qt"`
|
||||
over the default value `"gnome"`.
|
||||
'';
|
||||
homepage = "https://github.com/NickvisionApps/Parabolic";
|
||||
license = lib.licenses.gpl3Plus;
|
||||
|
||||
Reference in New Issue
Block a user