diff --git a/pkgs/by-name/li/libnick/package.nix b/pkgs/by-name/li/libnick/package.nix index 4a5bb2ec33ca..cd28002b1158 100644 --- a/pkgs/by-name/li/libnick/package.nix +++ b/pkgs/by-name/li/libnick/package.nix @@ -19,13 +19,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "libnick"; - version = "2025.3.3"; + version = "2025.5.3"; src = fetchFromGitHub { owner = "NickvisionApps"; repo = "libnick"; tag = finalAttrs.version; - hash = "sha256-5GO39rtSvg96y6VE0Ej4x7j1zDatP6JSktIcyhSrb98="; + hash = "sha256-JibExEI5MisKZ9kEIOMzDg8A8LEM8U+ckGFfnZu+ghQ="; }; nativeBuildInputs = diff --git a/pkgs/by-name/pa/parabolic/package.nix b/pkgs/by-name/pa/parabolic/package.nix index 4f7c4b109e7b..b204f89c24b2 100644 --- a/pkgs/by-name/pa/parabolic/package.nix +++ b/pkgs/by-name/pa/parabolic/package.nix @@ -7,6 +7,7 @@ itstool, ninja, yelp-tools, + desktop-file-utils, pkg-config, libnick, boost, @@ -18,6 +19,8 @@ libxmlxx5, blueprint-compiler, qt6, + qlementine, + qlementine-icons, yt-dlp, ffmpeg, aria2, @@ -31,13 +34,13 @@ assert lib.assertOneOf "uiPlatform" uiPlatform [ stdenv.mkDerivation (finalAttrs: { pname = "parabolic"; - version = "2025.1.4"; + version = "2025.5.4"; src = fetchFromGitHub { owner = "NickvisionApps"; repo = "Parabolic"; tag = finalAttrs.version; - hash = "sha256-B8/e5urhy5tAgHNd/PR3HlNQd0M0CxgC56nArFGlQ9c="; + hash = "sha256-2CFV9//8gFK1TYksdy9P4nLb7kj/8Q5dr5huoAuDNRs="; }; # Patches desktop file/dbus service bypassing wrapped executable @@ -59,6 +62,7 @@ stdenv.mkDerivation (finalAttrs: { pkg-config itstool yelp-tools + desktop-file-utils ] ++ lib.optionals (uiPlatform == "gnome") [ wrapGAppsHook4 @@ -76,6 +80,8 @@ stdenv.mkDerivation (finalAttrs: { ++ lib.optionals (uiPlatform == "qt") [ qt6.qtbase qt6.qtsvg + qlementine + qlementine-icons ] ++ lib.optionals (uiPlatform == "gnome") [ glib @@ -88,16 +94,28 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeFeature "UI_PLATFORM" uiPlatform) ]; + dontWrapGApps = true; + dontWrapQtApps = true; + preFixup = - lib.optionalString (uiPlatform == "gnome") "gappsWrapperArgs" - + lib.optionalString (uiPlatform == "qt") "qtWrapperArgs" - + "+=(--prefix PATH : ${ - lib.makeBinPath [ - aria2 - ffmpeg - yt-dlp - ] - })"; + 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[@]} + ''; passthru.updateScript = nix-update-script { }; diff --git a/pkgs/by-name/ql/qlementine-icons/package.nix b/pkgs/by-name/ql/qlementine-icons/package.nix new file mode 100644 index 000000000000..e577ee139fdc --- /dev/null +++ b/pkgs/by-name/ql/qlementine-icons/package.nix @@ -0,0 +1,49 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + qt6, + nix-update-script, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "qlementine-icons"; + version = "1.8.1"; + + src = fetchFromGitHub { + owner = "oclero"; + repo = "qlementine-icons"; + tag = "v${finalAttrs.version}"; + hash = "sha256-b6krWtDCQjJRzzkFNYLt33iSSQHm1UZ3AedXrzRrDTs="; + }; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ + qt6.qtbase + qt6.qtsvg + ]; + + dontWrapQtApps = true; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Vector icon set for modern desktop Qt5/Qt6 applications"; + longDescription = '' + An icon set aimed to be used in conjunction with the Qlementine Qt library. + + This icon set provides icons as requested by the Freedesktop + standard, and vastly expands it, in 16×16 pixels. + + The icons are in SVG format, so can be scaled to any size without + loosing any quality. However, they've been designed to be used in + `16×16` pixels, to be pixel-perfect. + ''; + homepage = "https://github.com/oclero/qlementine-icons"; + changelog = "https://github.com/oclero/qlementine-icons/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ normalcea ]; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/by-name/ql/qlementine/package.nix b/pkgs/by-name/ql/qlementine/package.nix new file mode 100644 index 000000000000..b2ab5b9e70de --- /dev/null +++ b/pkgs/by-name/ql/qlementine/package.nix @@ -0,0 +1,54 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + qt6, + nix-update-script, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "qlementine"; + version = "1.2.2"; + + src = fetchFromGitHub { + owner = "oclero"; + repo = "qlementine"; + tag = "v${finalAttrs.version}"; + hash = "sha256-icImLN04Ux+pqWaBTNruCkZC+735vzMz8tzssyCncjI="; + }; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ + qt6.qtbase + qt6.qtsvg + ]; + + dontWrapQtApps = true; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Modern QStyle for desktop Qt6 applications"; + longDescription = '' + A QStyle for desktop Qt6 applications. + + This library contains: + + - A custom QStyle named QlementineStyle, that implements all the + necessary API to give a modern look and feel to your Qt + application. It's a drop-in replacement for the default QStyle. + + - Lots of utilities to help you write beautiful QWidgets that fits + well with the style. + + - A collection of new QWidgets that are missing in Qt's standard + collection, such as Switch. + ''; + homepage = "https://oclero.github.io/qlementine/"; + changelog = "https://github.com/oclero/qlementine/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ normalcea ]; + platforms = lib.platforms.unix; + }; +})