nixos/k3b: remove, refer users to k3b 24.08 (Qt 6) (#351093)
This commit is contained in:
commit
4b2bc4c4d7
@ -101,7 +101,7 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||||||
|
|
||||||
- [InvoicePlane](https://invoiceplane.com), web application for managing and creating invoices. Available at [services.invoiceplane](#opt-services.invoiceplane.sites._name_.enable).
|
- [InvoicePlane](https://invoiceplane.com), web application for managing and creating invoices. Available at [services.invoiceplane](#opt-services.invoiceplane.sites._name_.enable).
|
||||||
|
|
||||||
- [k3b](https://userbase.kde.org/K3b), the KDE disk burning application. Available as [programs.k3b](#opt-programs.k3b.enable).
|
- [k3b](https://userbase.kde.org/K3b), the KDE disk burning application. Available as programs.k3b.
|
||||||
|
|
||||||
- [K40-Whisperer](https://www.scorchworks.com/K40whisperer/k40whisperer.html), a program to control cheap Chinese laser cutters. Available as [programs.k40-whisperer.enable](#opt-programs.k40-whisperer.enable). Users must add themselves to the `k40` group to be able to access the device.
|
- [K40-Whisperer](https://www.scorchworks.com/K40whisperer/k40whisperer.html), a program to control cheap Chinese laser cutters. Available as [programs.k40-whisperer.enable](#opt-programs.k40-whisperer.enable). Users must add themselves to the `k40` group to be able to access the device.
|
||||||
|
|
||||||
|
@ -1,50 +1,8 @@
|
|||||||
{ config, pkgs, lib, ... }:
|
{ lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
# interface
|
imports = [
|
||||||
options.programs.k3b = {
|
(lib.mkRemovedOptionModule [ "programs" "k3b" "enable" ]
|
||||||
enable = lib.mkOption {
|
"Please add kdePackages.k3b to environment.systemPackages instead")
|
||||||
type = lib.types.bool;
|
];
|
||||||
default = false;
|
|
||||||
description = ''
|
|
||||||
Whether to enable k3b, the KDE disk burning application.
|
|
||||||
|
|
||||||
Additionally to installing `k3b` enabling this will
|
|
||||||
add `setuid` wrappers in `/run/wrappers/bin`
|
|
||||||
for both `cdrdao` and `cdrecord`. On first
|
|
||||||
run you must manually configure the path of `cdrdae` and
|
|
||||||
`cdrecord` to correspond to the appropriate paths under
|
|
||||||
`/run/wrappers/bin` in the "Setup External Programs" menu.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# implementation
|
|
||||||
config = lib.mkIf config.programs.k3b.enable {
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
k3b
|
|
||||||
dvdplusrwtools
|
|
||||||
cdrdao
|
|
||||||
cdrtools
|
|
||||||
];
|
|
||||||
|
|
||||||
security.wrappers = {
|
|
||||||
cdrdao = {
|
|
||||||
setuid = true;
|
|
||||||
owner = "root";
|
|
||||||
group = "cdrom";
|
|
||||||
permissions = "u+wrx,g+x";
|
|
||||||
source = "${pkgs.cdrdao}/bin/cdrdao";
|
|
||||||
};
|
|
||||||
cdrecord = {
|
|
||||||
setuid = true;
|
|
||||||
owner = "root";
|
|
||||||
group = "cdrom";
|
|
||||||
permissions = "u+wrx,g+x";
|
|
||||||
source = "${pkgs.cdrtools}/bin/cdrecord";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,7 @@ still shows most of the available features is in `./gwenview`.
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
{
|
{
|
||||||
lib, libsForQt5, fetchurl,
|
lib, config, libsForQt5, fetchurl,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
@ -96,7 +96,6 @@ let
|
|||||||
incidenceeditor = callPackage ./incidenceeditor.nix {};
|
incidenceeditor = callPackage ./incidenceeditor.nix {};
|
||||||
itinerary = callPackage ./itinerary.nix {};
|
itinerary = callPackage ./itinerary.nix {};
|
||||||
juk = callPackage ./juk.nix {};
|
juk = callPackage ./juk.nix {};
|
||||||
k3b = callPackage ./k3b.nix {};
|
|
||||||
kaccounts-integration = callPackage ./kaccounts-integration.nix {};
|
kaccounts-integration = callPackage ./kaccounts-integration.nix {};
|
||||||
kaccounts-providers = callPackage ./kaccounts-providers.nix {};
|
kaccounts-providers = callPackage ./kaccounts-providers.nix {};
|
||||||
kaddressbook = callPackage ./kaddressbook.nix {};
|
kaddressbook = callPackage ./kaddressbook.nix {};
|
||||||
@ -264,6 +263,8 @@ let
|
|||||||
qmlkonsole = callPackage ./qmlkonsole.nix {};
|
qmlkonsole = callPackage ./qmlkonsole.nix {};
|
||||||
telly-skout = callPackage ./telly-skout.nix {};
|
telly-skout = callPackage ./telly-skout.nix {};
|
||||||
tokodon = callPackage ./tokodon.nix {};
|
tokodon = callPackage ./tokodon.nix {};
|
||||||
|
} // lib.optionalAttrs config.allowAliases {
|
||||||
|
k3b = throw "libsForQt5.k3b has been dropped in favor of kdePackages.k3b";
|
||||||
};
|
};
|
||||||
|
|
||||||
in lib.makeScope libsForQt5.newScope packages
|
in lib.makeScope libsForQt5.newScope packages
|
||||||
|
@ -1,48 +0,0 @@
|
|||||||
{ mkDerivation, lib
|
|
||||||
, extra-cmake-modules, kdoctools, makeWrapper, shared-mime-info
|
|
||||||
, libkcddb, karchive, kcmutils, kfilemetadata, knewstuff, knotifyconfig, solid, kxmlgui
|
|
||||||
, flac, lame, libmad, libmpcdec, libvorbis
|
|
||||||
, libsamplerate, libsndfile, taglib
|
|
||||||
, cdparanoia, cdrdao, cdrtools, dvdplusrwtools, libburn, libdvdcss, libdvdread, vcdimager
|
|
||||||
, ffmpeg, libmusicbrainz3, normalize, sox, transcode, kinit
|
|
||||||
}:
|
|
||||||
|
|
||||||
mkDerivation {
|
|
||||||
pname = "k3b";
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://apps.kde.org/k3b/";
|
|
||||||
description = "Disk burning application";
|
|
||||||
mainProgram = "k3b";
|
|
||||||
license = with licenses; [ gpl2Plus ];
|
|
||||||
maintainers = with maintainers; [ sander ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
};
|
|
||||||
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
|
|
||||||
buildInputs = [
|
|
||||||
# kde
|
|
||||||
libkcddb karchive kcmutils kfilemetadata knewstuff knotifyconfig solid kxmlgui
|
|
||||||
# formats
|
|
||||||
flac lame libmad libmpcdec libvorbis
|
|
||||||
# sound utilities
|
|
||||||
libsamplerate libsndfile taglib
|
|
||||||
# cd/dvd
|
|
||||||
cdparanoia libdvdcss libdvdread
|
|
||||||
# others
|
|
||||||
ffmpeg libmusicbrainz3 shared-mime-info
|
|
||||||
];
|
|
||||||
propagatedUserEnvPkgs = [ (lib.getBin kinit) ];
|
|
||||||
postFixup =
|
|
||||||
let
|
|
||||||
binPath = lib.makeBinPath [
|
|
||||||
cdrdao cdrtools dvdplusrwtools libburn normalize sox transcode
|
|
||||||
vcdimager flac
|
|
||||||
];
|
|
||||||
libraryPath = lib.makeLibraryPath [
|
|
||||||
cdparanoia
|
|
||||||
];
|
|
||||||
in ''
|
|
||||||
wrapProgram "$out/bin/k3b" \
|
|
||||||
--prefix PATH : "${binPath}" \
|
|
||||||
--prefix LD_LIBRARY_PATH : ${libraryPath}
|
|
||||||
'';
|
|
||||||
}
|
|
@ -10033,7 +10033,7 @@ with pkgs;
|
|||||||
});
|
});
|
||||||
|
|
||||||
libsForQt5 = (recurseIntoAttrs (import ./qt5-packages.nix {
|
libsForQt5 = (recurseIntoAttrs (import ./qt5-packages.nix {
|
||||||
inherit lib __splicedPackages makeScopeWithSplicing' generateSplicesForMkScope pkgsHostTarget;
|
inherit lib config __splicedPackages makeScopeWithSplicing' generateSplicesForMkScope pkgsHostTarget;
|
||||||
})) // { __recurseIntoDerivationForReleaseJobs = true; };
|
})) // { __recurseIntoDerivationForReleaseJobs = true; };
|
||||||
|
|
||||||
# plasma5Packages maps to the Qt5 packages set that is used to build the plasma5 desktop
|
# plasma5Packages maps to the Qt5 packages set that is used to build the plasma5 desktop
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
|
|
||||||
{ lib
|
{ lib
|
||||||
|
, config
|
||||||
, __splicedPackages
|
, __splicedPackages
|
||||||
, makeScopeWithSplicing'
|
, makeScopeWithSplicing'
|
||||||
, generateSplicesForMkScope
|
, generateSplicesForMkScope
|
||||||
@ -47,7 +48,7 @@ makeScopeWithSplicing' {
|
|||||||
kdeGear = let
|
kdeGear = let
|
||||||
mkGear = import ../applications/kde;
|
mkGear = import ../applications/kde;
|
||||||
attrs = {
|
attrs = {
|
||||||
inherit libsForQt5;
|
inherit config libsForQt5;
|
||||||
inherit (pkgs) lib fetchurl;
|
inherit (pkgs) lib fetchurl;
|
||||||
};
|
};
|
||||||
in (lib.makeOverridable mkGear attrs);
|
in (lib.makeOverridable mkGear attrs);
|
||||||
|
Loading…
Reference in New Issue
Block a user