Merge master into staging-next

This commit is contained in:
github-actions[bot]
2024-02-12 12:01:25 +00:00
committed by GitHub
26 changed files with 278 additions and 160 deletions
+23 -34
View File
@@ -3,72 +3,61 @@
Writing Nix expressions for Qt libraries and applications is largely similar as for other C++ software.
This section assumes some knowledge of the latter.
The major caveat with Qt applications is that Qt uses a plugin system to load additional modules at runtime,
from a list of well-known locations. In Nixpkgs, we patch QtCore to instead use an environment variable,
and wrap Qt applications to set it to the right paths. This effectively makes the runtime dependencies
pure and explicit at build-time, at the cost of introducing an extra indirection.
The major caveat with Qt applications is that Qt uses a plugin system to load additional modules at runtime.
In Nixpkgs, we wrap Qt applications to inject environment variables telling Qt where to discover the required plugins and QML modules.
This effectively makes the runtime dependencies pure and explicit at build-time, at the cost of introducing
an extra indirection.
## Nix expression for a Qt package (default.nix) {#qt-default-nix}
```nix
{ stdenv, lib, qtbase, wrapQtAppsHook }:
{ stdenv, lib, qt6, wrapQtAppsHook }:
stdenv.mkDerivation {
pname = "myapp";
version = "1.0";
buildInputs = [ qtbase ];
nativeBuildInputs = [ wrapQtAppsHook ];
buildInputs = [ qt6.qtbase ];
nativeBuildInputs = [ qt6.wrapQtAppsHook ];
}
```
It is important to import Qt modules directly, that is: `qtbase`, `qtdeclarative`, etc. *Do not* import Qt package sets such as `qt5` because the Qt versions of dependencies may not be coherent, causing build and runtime failures.
Any Qt package should include `wrapQtAppsHook` in `nativeBuildInputs`, or explicitly set `dontWrapQtApps` to bypass generating the wrappers.
Additionally all Qt packages must include `wrapQtAppsHook` in `nativeBuildInputs`, or you must explicitly set `dontWrapQtApps`.
::: {.note}
Graphical Linux applications should also include `qtwayland` in `buildInputs`, to ensure the Wayland platform plugin is available.
`pkgs.callPackage` does not provide injections for `qtbase` or the like.
Instead you want to either use `pkgs.libsForQt5.callPackage`, or `pkgs.qt6Packages.callPackage`, depending on the Qt version you want to use.
This may become default in the future, see [NixOS/nixpkgs#269674](https://github.com/NixOS/nixpkgs/pull/269674).
:::
For example (from [here](https://github.com/NixOS/nixpkgs/blob/2f9286912cb215969ece465147badf6d07aa43fe/pkgs/top-level/all-packages.nix#L30106))
## Packages supporting multiple Qt versions {#qt-versions}
```nix
zeal-qt5 = libsForQt5.callPackage ../data/documentation/zeal { };
zeal-qt6 = qt6Packages.callPackage ../data/documentation/zeal { };
zeal = zeal-qt5;
```
If your package is a library that can be built with multiple Qt versions, you may want to take Qt modules as separate arguments (`qtbase`, `qtdeclarative` etc.), and invoke the package from `pkgs/top-level/qt5-packages.nix` or `pkgs/top-level/qt6-packages.nix` using the respective `callPackage` functions.
## Locating runtime dependencies {#qt-runtime-dependencies}
Applications should generally be built with upstream's preferred Qt version.
Qt applications must be wrapped to find runtime dependencies.
Include `wrapQtAppsHook` in `nativeBuildInputs`:
```nix
{ stdenv, wrapQtAppsHook }:
stdenv.mkDerivation {
# ...
nativeBuildInputs = [ wrapQtAppsHook ];
}
```
## Locating additional runtime dependencies {#qt-runtime-dependencies}
Add entries to `qtWrapperArgs` are to modify the wrappers created by
`wrapQtAppsHook`:
```nix
{ stdenv, wrapQtAppsHook }:
{ stdenv, qt6 }:
stdenv.mkDerivation {
# ...
nativeBuildInputs = [ wrapQtAppsHook ];
nativeBuildInputs = [ qt6.wrapQtAppsHook ];
qtWrapperArgs = [ ''--prefix PATH : /path/to/bin'' ];
}
```
The entries are passed as arguments to [wrapProgram](#fun-wrapProgram).
Set `dontWrapQtApps` to stop applications from being wrapped automatically.
Wrap programs manually with `wrapQtApp`, using the syntax of
[wrapProgram](#fun-wrapProgram):
If you need more control over the wrapping process, set `dontWrapQtApps` to disable automatic wrapper generation,
and then create wrappers manually in `fixupPhase`, using `wrapQtApp`, which itself is a small wrapper over [wrapProgram](#fun-wrapProgram):
The `makeWrapper` arguments required for Qt are also exposed in the environment as `$qtWrapperArgs`.
```nix
{ stdenv, lib, wrapQtAppsHook }:
@@ -351,3 +351,4 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- QtMultimedia has changed its default backend to `QT_MEDIA_BACKEND=ffmpeg` (previously `gstreamer` on Linux or `darwin` on MacOS).
The previous native backends remain available but are now minimally maintained. Refer to [upstream documentation](https://doc.qt.io/qt-6/qtmultimedia-index.html#ffmpeg-as-the-default-backend) for further details about each platform.
- The oil shell is now using the c++ version by default. The python based build is still available as `oil-python`
@@ -25,7 +25,7 @@ in
lua_modules_path = "lua"
'';
})).overrideAttrs (drv: {
version = attrs.version;
version = attrs.version or drv.version;
rockspecVersion = drv.rockspecVersion;
});
@@ -6094,6 +6094,18 @@ final: prev:
meta.homepage = "https://github.com/folke/neoconf.nvim/";
};
neocord = buildVimPlugin {
pname = "neocord";
version = "2024-02-10";
src = fetchFromGitHub {
owner = "IogaMaster";
repo = "neocord";
rev = "d5f51d466644fe3c62eda4c41e373ecdc299a367";
sha256 = "1gv7lkqgiljgazzm0r5nbnvj3rj0l376bcz3hf2d881h4xi2lq3l";
};
meta.homepage = "https://github.com/IogaMaster/neocord";
};
neodark-vim = buildVimPlugin {
pname = "neodark.vim";
version = "2024-01-12";
@@ -82,6 +82,7 @@ https://github.com/romgrk/barbar.nvim/,,
https://github.com/utilyre/barbecue.nvim/,,
https://github.com/chriskempson/base16-vim/,,
https://github.com/nvchad/base46/,HEAD,
https://github.com/IogaMaster/neocord.git,main,
https://github.com/jamespwilliams/bat.vim/,HEAD,
https://github.com/vim-scripts/bats.vim/,,
https://github.com/rbgrouleff/bclose.vim/,,
@@ -49,13 +49,13 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "imagemagick";
version = "7.1.1-27";
version = "7.1.1-28";
src = fetchFromGitHub {
owner = "ImageMagick";
repo = "ImageMagick";
rev = finalAttrs.version;
hash = "sha256-jZ5mLqhNZw8V9D61Nv2gB+6Wo9KP+P3KouQ+u2OUL6I=";
hash = "sha256-WT058DZzMrNKn9E56dH476iCgeOi7QQ3jNBxKAqT6h4=";
};
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big
+24 -12
View File
@@ -1,26 +1,38 @@
{ lib, fetchFromGitHub, rustPlatform, pkg-config, keybinder3, gtk3 }:
{ lib
, rustPlatform
, fetchFromGitHub
, pkg-config
, wrapGAppsHook
, keybinder3
}:
rustPlatform.buildRustPackage rec {
pname = "findex";
version = "0.7.1";
version = "0.8.1";
src = fetchFromGitHub {
owner = "mdgaziur";
repo = pname;
repo = "findex";
rev = "v${version}";
hash = "sha256-KaT6lEbrUelv/f9bIBW4bSCuExFu4b7XI7hcrO4mD0M=";
hash = "sha256-rxOVrl2Q27z5oo1J6D4ft4fKaOMOadmidflD0jK0+3k=";
};
cargoHash = "sha256-7A+EF88DJrgsKPOJt2xaBnWSMkyhpFImyZmnHcyp+Dw=";
cargoHash = "sha256-MiD96suB88NZWg7Ay/ACZfOeE66WOe9dLsvtOhCQgGo=";
nativeBuildInputs = [
pkg-config
];
postPatch = ''
# failing rust documentation tests and faulty quotes "`README.md`"
sed -i '/^\/\/\//d' ./crates/findex-plugin/src/lib.rs
substituteInPlace ./crates/findex/src/gui/css.rs \
--replace-fail '/opt/findex/style.css' "$out/share/findex/style.css"
'';
buildInputs = [
gtk3
keybinder3
];
nativeBuildInputs = [ pkg-config wrapGAppsHook ];
buildInputs = [ keybinder3 ];
postInstall = ''
install -Dm644 css/style.css $out/share/findex/style.css
'';
meta = with lib; {
description = "Highly customizable application finder written in Rust and uses Gtk3";
@@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "abracadabra";
version = "2.3.5";
version = "2.4.0";
src = fetchFromGitHub {
owner = "KejPi";
repo = "AbracaDABra";
rev = "v${version}";
hash = "sha256-iWXQ4Tjqz9Y+pihuMDBKi3iwuo5eAyyAMNtRBxojOhs=";
hash = "sha256-viB6vRqBvYbFJh6wYs7kIk4sY9SZHRz1KlHJ3DTwUFQ=";
};
nativeBuildInputs = [
@@ -12,13 +12,13 @@
stdenv.mkDerivation (finalAttrs:{
pname = "wxmaxima";
version = "24.02.0";
version = "24.02.1";
src = fetchFromGitHub {
owner = "wxMaxima-developers";
repo = "wxmaxima";
rev = "Version-${finalAttrs.version}";
hash = "sha256-X4nx8zARToogQS4bfkv3CbsS2qU2uL9BBYw0Lw7QC18=";
hash = "sha256-ORrIZlLqZsxMpqtw5Z7GMI9dDod50hj94ro6urjBD/A=";
};
buildInputs = [
@@ -36,12 +36,12 @@
stdenv.mkDerivation (finalAttrs: {
pname = "phosh";
version = "0.35.0";
version = "0.36.0";
src = fetchurl {
# Release tarball which includes subprojects gvc and libcall-ui
url = with finalAttrs; "https://sources.phosh.mobi/releases/${pname}/${pname}-${version}.tar.xz";
hash = "sha256-hfm89G9uxVc8j8rDOg1ytI+Pm9s9WQWazH3yLZdWSRg=";
hash = "sha256-rhhvVCOqw/jqNSpo9Hlrcgh4Bxnoud/Z3yAq4n/ixIQ=";
};
nativeBuildInputs = [
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
dontStrip = true;
meta = {
description = "A new unix shell";
description = "A new unix shell - Old python build";
homepage = "https://www.oilshell.org/";
license = with lib.licenses; [
+74
View File
@@ -0,0 +1,74 @@
{ stdenv, lib, fetchurl, symlinkJoin, withReadline ? true, readline }:
let
readline-all = symlinkJoin {
name = "readline-all"; paths = [ readline readline.dev ];
};
in
stdenv.mkDerivation rec {
pname = "oil";
version = "0.20.0";
src = fetchurl {
url = "https://www.oilshell.org/download/oils-for-unix-${version}.tar.gz";
hash = "sha256-d4BIRj8bPyd7awZyJPlZYBwr+o82IKGh4y4/urOYOxc=";
};
postPatch = ''
patchShebangs _build
'';
preInstall = ''
mkdir -p $out/bin
'';
buildPhase = ''
runHook preBuild
_build/oils.sh
runHook postBuild
'';
installPhase = ''
runHook preInstall
./install
runHook postInstall
'';
strictDeps = true;
buildInputs = lib.optional withReadline readline;
# As of 0.19.0 the build generates an error on MacOS (using clang version 16.0.6 in the builder),
# whereas running it outside of Nix with clang version 15.0.0 generates just a warning. The shell seems to
# work just fine though, so we disable the error here.
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=incompatible-function-pointer-types";
configureFlags = [
"--datarootdir=${placeholder "out"}"
] ++ lib.optionals withReadline [
"--with-readline"
"--readline=${readline-all}"
];
# Stripping breaks the bundles by removing the zip file from the end.
dontStrip = true;
meta = {
description = "A new unix shell";
homepage = "https://www.oilshell.org/";
license = with lib.licenses; [
psfl # Includes a portion of the python interpreter and standard library
asl20 # Licence for Oil itself
];
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ lheckemann alva mkg20001 ];
changelog = "https://www.oilshell.org/release/${version}/changelog.html";
};
passthru = {
shellPath = "/bin/osh";
};
}
+81
View File
@@ -0,0 +1,81 @@
{ lib
, fetchFromGitHub
, fetchpatch
, python3
, python3Packages
, wirelesstools
, aircrack-ng
, wireshark-cli
, reaverwps-t6x
, cowpatty
, hashcat
, hcxtools
, hcxdumptool
, which
, bully
, pixiewps
, john
, iw
, macchanger
}:
let
pythonDependencies = with python3Packages; [
chardet
scapy
];
in
python3.pkgs.buildPythonApplication rec {
pname = "wifite2";
version = "2.7.0";
src = fetchFromGitHub {
owner = "kimocoder";
repo = "wifite2";
rev = version;
hash = "sha256-G2AKKZUDS2UQm95TEhGJIucyMRcm7oL0d3J8uduEQhw=";
};
patches = [
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.7.0-1/debian/patches/Disable-aircrack-failing-test.patch";
hash = "sha256-BUAowBajfnZ1x6Z3Ce3L0rAERv7v/KrdHcdvKxTxSrM=";
})
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.7.0-1/debian/patches/Disable-two-failing-tests.patch";
hash = "sha256-wCwfNkF/GvOU5FWPmQ3dJ4Txthz9T9TO2xhSL5vllQc=";
})
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.7.0-1/debian/patches/fix-for-new-which.patch";
hash = "sha256-8xs+O2ILSRcvsw2pyx2gEBFHdduoI+xmUvDBchKz2Qs=";
})
];
propagatedBuildInputs = [
aircrack-ng
wireshark-cli
reaverwps-t6x
cowpatty
hashcat
hcxtools
hcxdumptool
wirelesstools
which
bully
pixiewps
john
iw
macchanger
] ++ pythonDependencies;
nativeCheckInputs = propagatedBuildInputs ++ [ python3.pkgs.unittestCheckHook ];
meta = with lib; {
homepage = "https://github.com/kimocoder/wifite2";
description = "Rewrite of the popular wireless network auditor, wifite";
mainProgram = "wifite";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ lassulus danielfullmer d3vil0p3r ];
};
}
@@ -24,19 +24,20 @@
, qtdeclarative
, qtfeedback
, qtgraphicaleffects
, validatePkgConfig
, wrapGAppsHook
, xvfb-run
}:
stdenv.mkDerivation (finalAttrs: {
pname = "content-hub";
version = "1.1.0";
version = "1.1.1";
src = fetchFromGitLab {
owner = "ubports";
repo = "development/core/content-hub";
rev = finalAttrs.version;
hash = "sha256-IntEpgPCBmOL6K6TU+UhgGb6OHVA9pYurK5VN3woIIw=";
hash = "sha256-sQeyJV+Wc6PHKGIefl/dfU06XqTdICsn+Xamjx3puiI=";
};
outputs = [
@@ -83,15 +84,15 @@ stdenv.mkDerivation (finalAttrs: {
postPatch = ''
substituteInPlace import/*/Content/CMakeLists.txt \
--replace "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}"
--replace-fail "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}"
# Look for peer files in running system
substituteInPlace src/com/lomiri/content/service/registry-updater.cpp \
--replace '/usr' '/run/current-system/sw'
--replace-fail '/usr' '/run/current-system/sw'
# Don't override default theme search path (which honours XDG_DATA_DIRS) with a FHS assumption
substituteInPlace import/Lomiri/Content/contenthubplugin.cpp \
--replace 'QIcon::setThemeSearchPaths(QStringList() << ("/usr/share/icons/"));' ""
--replace-fail 'QIcon::setThemeSearchPaths(QStringList() << ("/usr/share/icons/"));' ""
'';
strictDeps = true;
@@ -101,6 +102,7 @@ stdenv.mkDerivation (finalAttrs: {
gettext
pkg-config
qtdeclarative # qmlplugindump
validatePkgConfig
wrapGAppsHook
];
@@ -179,6 +181,7 @@ stdenv.mkDerivation (finalAttrs: {
even if they are not running at the same time.
'';
homepage = "https://gitlab.com/ubports/development/core/content-hub";
changelog = "https://gitlab.com/ubports/development/core/content-hub/-/blob/${finalAttrs.version}/ChangeLog";
license = with licenses; [ gpl3Only lgpl3Only ];
mainProgram = "content-hub-service";
maintainers = teams.lomiri.members;
@@ -21,16 +21,16 @@
buildPythonPackage rec {
pname = "python-telegram-bot";
version = "20.7";
format = "pyproject";
version = "20.8";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = pname;
repo = pname;
owner = "python-telegram-bot";
repo = "python-telegram-bot";
rev = "refs/tags/v${version}";
hash = "sha256-lUErrBF4iucgWRRT535pwaayYY+gLgsT6Zmc+FM8aE0=";
hash = "sha256-FvVUl0bV95IDPbG+6N9b3ZIsnLAUwVcdS4cu0I1aNDw=";
};
nativeBuildInputs = [
@@ -6,6 +6,8 @@
, python-multipart
, starlette
, wtforms
, httpx
, jinja2
, pytestCheckHook
}:
@@ -33,6 +35,8 @@ buildPythonPackage rec {
nativeCheckInputs = [
pytestCheckHook
httpx
jinja2
];
meta = with lib; {
@@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "stem";
version = "1.8.2";
version = "1.8.3-unstable-2024-02-11";
disabled = pythonOlder "3.6";
@@ -19,8 +19,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "torproject";
repo = "stem";
rev = "refs/tags/${version}";
hash = "sha256-9BXeE/sVa13jr8G060aWjc49zgDVBhjaR6nt4lSxc0g=";
rev = "9f1fa4ac53cf83a4cdd7155cc487212bf8bc08af";
hash = "sha256-AMyF4ir9Utb91dp1Swheyw1zQH6ZvgyW9kFp1g9JoQQ=";
};
nativeBuildInputs = [
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "golangci-lint";
version = "1.55.2";
version = "1.56.1";
src = fetchFromGitHub {
owner = "golangci";
repo = "golangci-lint";
rev = "v${version}";
hash = "sha256-DO71wfDmCuziEcsme1g1uNIl3MswA+EkQcYzOYHbG+I=";
hash = "sha256-6mwdDi9ltEKpDNa+GPEHiJdQO8csUg6MnuyiKQ02B80=";
};
vendorHash = "sha256-0+jImfMdVocOczGWeO03YXUg5yKYTu3WeJaokSlcYFM=";
vendorHash = "sha256-Y+y3X0pGFYeAMpvRWFgzcWRpHQL+X9J3/ehiO2N2P2o=";
subPackages = [ "cmd/golangci-lint" ];
@@ -36,6 +36,7 @@ buildGoModule rec {
description = "Fast linters Runner for Go";
homepage = "https://golangci-lint.run/";
changelog = "https://github.com/golangci/golangci-lint/blob/v${version}/CHANGELOG.md";
mainProgram = "golangci-lint";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ anpryl manveru mic92 ];
};
@@ -1,7 +1,7 @@
{
"testing": {
"version": "6.8-rc3",
"hash": "sha256:1djrivjf84l28slhf14j7cc007pibwyjygq9nml39k6zk8gnhl0x"
"version": "6.8-rc4",
"hash": "sha256:0nn36b2cx04p2210xm0msa8c1jl96vp0nf0bq3w8xhrl95yzj99z"
},
"6.5": {
"version": "6.5.13",
@@ -6,7 +6,7 @@
, ... } @ args:
let
version = "6.1.75-rt23"; # updated by ./update-rt.sh
version = "6.1.77-rt24"; # updated by ./update-rt.sh
branch = lib.versions.majorMinor version;
kversion = builtins.elemAt (lib.splitString "-" version) 0;
in buildLinux (args // {
@@ -18,14 +18,14 @@ in buildLinux (args // {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v6.x/linux-${kversion}.tar.xz";
sha256 = "0mis14ll6xmhw71vfpw1aahi5z207qysha7x316fq4qc6c899lbc";
sha256 = "07grng6rrgpy6c3465hwqhn3gcdam1c8rwya30vgpk8nfxbfqm1v";
};
kernelPatches = let rt-patch = {
name = "rt";
patch = fetchurl {
url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
sha256 = "0y88g4acq9vcxb169zficcih1dgq7ssl6v3f9740jr6r4l9ycv1x";
sha256 = "194fdr89020igfdcfwdrfrl3rn51aannadr5x4yhd7p4cma0iq0a";
};
}; in [ rt-patch ] ++ kernelPatches;
+2 -2
View File
@@ -4,13 +4,13 @@
# Refer to the following comment to get you setup: https://github.com/NixOS/nixpkgs/pull/201646#issuecomment-1320893716
buildFishPlugin rec {
pname = "tide";
version = "6.0.1";
version = "6.1.1";
src = fetchFromGitHub {
owner = "IlanCosman";
repo = "tide";
rev = "v${version}";
hash = "sha256-oLD7gYFCIeIzBeAW1j62z5FnzWAp3xSfxxe7kBtTLgA=";
hash = "sha256-ZyEk/WoxdX5Fr2kXRERQS1U1QHH3oVSyBQvlwYnEYyc=";
};
#buildFishplugin will only move the .fish files, but tide has a tide configure function
+4 -3
View File
@@ -43,13 +43,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "fastfetch";
version = "2.7.1";
version = "2.8.3";
src = fetchFromGitHub {
owner = "fastfetch-cli";
repo = "fastfetch";
rev = finalAttrs.version;
hash = "sha256-s0N3Rt3lLOCyaeXeNYu6hlGtNtGR+YC7Aj4/3SeVMpQ=";
hash = "sha256-W6SmKyTBR0cXAkgcbbM1lEiHFanqCaa2lhAb+zQP/mg=";
};
outputs = [ "out" "man" ];
@@ -95,11 +95,12 @@ stdenv.mkDerivation (finalAttrs: {
xorg.libXau
xorg.libXdmcp
xorg.libXext
] ++ lib.optionals (x11Support && (!stdenv.isDarwin)) [
] ++ lib.optionals (x11Support && (!stdenv.isDarwin)) [
xfce.xfconf
] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [
Apple80211
AppKit
AVFoundation
Cocoa
CoreDisplay
CoreVideo
+2 -2
View File
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "nb";
version = "7.10.3";
version = "7.11.0";
src = fetchFromGitHub {
owner = "xwmx";
repo = "nb";
rev = version;
sha256 = "sha256-1zZdgL4zy+3u7y4MptDLcmQDSmLZ3gJVlk27enW6xQc=";
sha256 = "sha256-A7RC8Zsj746lVm9uqD1W+9gRA/zC+p12WsVVudGBxa8=";
};
nativeBuildInputs = [ installShellFiles ];
+15 -18
View File
@@ -1,23 +1,18 @@
{ stdenv, lib, git, openssl, buildPythonApplication, pytestCheckHook, ps
, fetchPypi, fetchFromSourcehut, sudo }:
, fetchPypi, fetchFromGitLab, sudo }:
buildPythonApplication rec {
pname = "pmbootstrap";
version = "2.1.0";
version = "2.2.0";
src = fetchPypi {
inherit pname version;
hash = "sha256-buCfQsi10LezDzYeplArmFRSc3vbjtl+FuTm/VUS2us=";
};
repo = fetchFromSourcehut {
owner = "~postmarketos";
src = fetchFromGitLab {
owner = "postmarketos";
repo = pname;
rev = version;
hash = "sha256-3GZ4PeMnG/a46WwvWPQFeYbJPp+NGU7A98QasnlMIL0=";
hash = "sha256-wRJvvABIUPh79QfS8VcwRueB/vO9oGcqyE/OugfTsd8=";
};
pmb_test = "${repo}/test";
pmb_test = "${src}/test";
# Tests depend on sudo
doCheck = stdenv.isLinux;
@@ -33,14 +28,17 @@ buildPythonApplication rec {
"test_aportgen"
"test_aportgen_device_wizard"
"test_bootimg"
"test_build_abuild_leftovers"
"test_build_depends_binary_outdated"
"test_build_depends_high_level"
"test_build_depends_no_binary_error"
"test_build_is_necessary"
"test_build_local_source_high_level"
"test_build_src_invalid_path"
"test_check"
"test_can_fast_forward"
"test_check_build_for_arch"
"test_check_config"
"test_chroot_arguments"
"test_chroot_interactive_shell"
"test_chroot_interactive_shell_user"
@@ -49,6 +47,8 @@ buildPythonApplication rec {
"test_config_user"
"test_cross_compile_distcc"
"test_crossdirect"
"test_extract_arch"
"test_extract_version"
"test_file"
"test_filter_aport_packages"
"test_filter_missing_packages_binary_exists"
@@ -56,6 +56,7 @@ buildPythonApplication rec {
"test_filter_missing_packages_pmaports"
"test_finish"
"test_folder_size"
"test_get_all_component_names"
"test_get_apkbuild"
"test_get_depends"
"test_get_upstream_remote"
@@ -72,6 +73,7 @@ buildPythonApplication rec {
"test_pkgrel_bump"
"test_pmbootstrap_status"
"test_print_checks_git_repo"
"test_proxy"
"test_pull"
"test_qemu_running_processes"
"test_questions_additional_options"
@@ -87,18 +89,13 @@ buildPythonApplication rec {
"test_skip_already_built"
"test_switch_to_channel_branch"
"test_version"
"test_build_abuild_leftovers"
"test_get_all_component_names"
"test_check_config"
"test_extract_arch"
"test_extract_version"
"test_check"
];
makeWrapperArgs = [ "--prefix PATH : ${lib.makeBinPath [ git openssl ]}" ];
meta = with lib; {
description = "Sophisticated chroot/build/flash tool to develop and install postmarketOS";
description =
"Sophisticated chroot/build/flash tool to develop and install postmarketOS";
homepage = "https://gitlab.com/postmarketOS/pmbootstrap";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ onny ];
-54
View File
@@ -1,54 +0,0 @@
{ lib, fetchFromGitHub, fetchpatch, python3, wirelesstools
, aircrack-ng, wireshark-cli, reaverwps-t6x, cowpatty, hashcat, hcxtools
, hcxdumptool, which, bully, pixiewps }:
python3.pkgs.buildPythonApplication rec {
version = "2.6.0";
pname = "wifite2";
src = fetchFromGitHub {
owner = "kimocoder";
repo = "wifite2";
rev = version;
sha256 = "sha256-q8aECegyIoAtYFsm8QEr8OnX+GTqjEeWfYQyESk27SA=";
};
patches = [
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.5.8-2/debian/patches/Disable-aircrack-failing-test.patch";
sha256 = "1kj2m973l067fdg9dj61vbjf4ym9x1m9kn0q8ci9r6bb30yg6sv2";
})
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.5.8-2/debian/patches/Disable-two-failing-tests.patch";
sha256 = "15vas7zvpdk2lr1pzv8hli6jhdib0dibp7cmikiai53idjxay56z";
})
(fetchpatch {
url = "https://salsa.debian.org/pkg-security-team/wifite/raw/debian/2.5.8-2/debian/patches/fix-for-new-which.patch";
sha256 = "0p6sa09qpq9qarkjrai2ksx9nz2v2hs6dk1y01qnfbsmc4hhm30g";
})
];
propagatedBuildInputs = [
aircrack-ng
wireshark-cli
reaverwps-t6x
cowpatty
hashcat
hcxtools
hcxdumptool
wirelesstools
which
bully
pixiewps
];
nativeCheckInputs = propagatedBuildInputs ++ [ python3.pkgs.unittestCheckHook ];
meta = with lib; {
homepage = "https://github.com/kimocoder/wifite2";
description = "Rewrite of the popular wireless network auditor, wifite";
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ lassulus danielfullmer ];
};
}
-4
View File
@@ -14545,8 +14545,6 @@ with pkgs;
wifish = callPackage ../tools/networking/wifish { };
wifite2 = callPackage ../tools/networking/wifite2 { };
wimboot = callPackage ../tools/misc/wimboot { };
wit-bindgen = callPackage ../tools/misc/wit-bindgen { };
@@ -15377,8 +15375,6 @@ with pkgs;
oh = callPackage ../shells/oh { };
oil = callPackage ../shells/oil { };
oksh = callPackage ../shells/oksh { };
scponly = callPackage ../shells/scponly { };