Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions pkgs/tools/system/uefitool/bundle-destination.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
UEFITool/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/UEFITool/CMakeLists.txt b/UEFITool/CMakeLists.txt
index aef60d0..98723ac 100644
--- a/UEFITool/CMakeLists.txt
+++ b/UEFITool/CMakeLists.txt
@@ -143,4 +143,4 @@ IF(UNIX AND (NOT APPLE) AND (NOT CYGWIN))
INSTALL(FILES uefitool.desktop DESTINATION share/applications)
ENDIF()

-INSTALL(TARGETS UEFITool BUNDLE DESTINATION "/Applications" )
+INSTALL(TARGETS UEFITool BUNDLE DESTINATION "Applications" )
--
2.40.1

38 changes: 38 additions & 0 deletions pkgs/tools/system/uefitool/new-engine.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchFromGitHub,
qtbase,
cmake,
wrapQtAppsHook,
zip,
}:

stdenv.mkDerivation (finalAttrs: {
pname = "uefitool";
version = "A71";

src = fetchFromGitHub {
hash = "sha256-NRlrKm5+eED6oyvFRSEhn0EUbMsPJtuFAyv3vgY/IUI=";
owner = "LongSoft";
repo = "uefitool";
tag = finalAttrs.version;
};

buildInputs = [ qtbase ];
nativeBuildInputs = [
cmake
zip
wrapQtAppsHook
];
patches = lib.optionals stdenv.isDarwin [ ./bundle-destination.patch ];

meta = {
description = "UEFI firmware image viewer and editor";
homepage = "https://github.com/LongSoft/uefitool";
license = lib.licenses.bsd2;
maintainers = with lib.maintainers; [ athre0z ];
platforms = lib.platforms.unix;
mainProgram = "uefitool";
};
})
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@
{
version,
sha256,
installFiles,
}:
{
lib,
mkDerivation,
Expand All @@ -14,19 +9,14 @@
}:

mkDerivation rec {
passthru = {
inherit version;
inherit sha256;
inherit installFiles;
};
pname = "uefitool";
inherit version;
version = "0.28.0";

src = fetchFromGitHub {
inherit sha256;
hash = "sha256-StqrOMsKst2X2yQQ/Xl7iLAuA4QXEOyj2KtE7ZtoUNg=";
owner = "LongSoft";
repo = pname;
rev = version;
repo = "uefitool";
tag = version;
};

buildInputs = [ qtbase ];
Expand All @@ -43,15 +33,16 @@ mkDerivation rec {

installPhase = ''
mkdir -p "$out"/bin
cp ${lib.concatStringsSep " " installFiles} "$out"/bin
cp UEFITool UEFIReplace/UEFIReplace UEFIPatch/UEFIPatch "$out"/bin
'';

meta = with lib; {
meta = {
description = "UEFI firmware image viewer and editor";
homepage = "https://github.com/LongSoft/uefitool";
license = licenses.bsd2;
maintainers = [ ];
license = lib.licenses.bsd2;
maintainers = with lib.maintainers; [ athre0z ];
# uefitool supposedly works on other platforms, but their build script only works on linux in nixpkgs
platforms = platforms.linux;
platforms = lib.platforms.linux;
mainProgram = "UEFITool";
};
}
27 changes: 4 additions & 23 deletions pkgs/tools/system/uefitool/variants.nix
Original file line number Diff line number Diff line change
@@ -1,24 +1,5 @@
{ libsForQt5 }:
let
common = opts: libsForQt5.callPackage (import ./common.nix opts) { };
in
rec {
new-engine = common {
version = "A62";
sha256 = "sha256-U89j0BV57luv1c9hoYJtisKLxFezuaGFokZ29/NJ0xg=";
installFiles = [
"build/UEFITool/UEFITool"
"build/UEFIFind/UEFIFind"
"build/UEFIExtract/UEFIExtract"
];
};
old-engine = common rec {
version = "0.28.0";
sha256 = "1n2hd2dysi5bv2iyq40phh1jxc48gdwzs414vfbxvcharcwapnja";
installFiles = [
"UEFITool"
"UEFIReplace/UEFIReplace"
"UEFIPatch/UEFIPatch"
];
};
{ libsForQt5, qt6Packages }:
{
new-engine = qt6Packages.callPackage ./new-engine.nix { };
old-engine = libsForQt5.callPackage ./old-engine.nix { };
}