Merge pull request #62757 from lightbulbjim/libblockdev-sgdisk
libblockdev: add gptfdisk as a dependency
This commit is contained in:
		
						commit
						059ce69f39
					
				@ -1,5 +1,5 @@
 | 
			
		||||
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, gtk-doc, libxslt, docbook_xsl
 | 
			
		||||
, docbook_xml_dtd_43, python3, gobject-introspection, glib, udev, kmod, parted, libyaml
 | 
			
		||||
{ stdenv, fetchFromGitHub, substituteAll, autoreconfHook, pkgconfig, gtk-doc, libxslt, docbook_xsl
 | 
			
		||||
, docbook_xml_dtd_43, python3, gobject-introspection, glib, udev, kmod, parted, gptfdisk, libyaml
 | 
			
		||||
, cryptsetup, lvm2, dmraid, utillinux, libbytesize, libndctl, nss, volume_key
 | 
			
		||||
}:
 | 
			
		||||
 | 
			
		||||
@ -17,6 +17,13 @@ in stdenv.mkDerivation rec {
 | 
			
		||||
 | 
			
		||||
  outputs = [ "out" "dev" "devdoc" ];
 | 
			
		||||
 | 
			
		||||
  patches = [
 | 
			
		||||
    (substituteAll {
 | 
			
		||||
      src = ./fix-paths.patch;
 | 
			
		||||
      sgdisk = "${gptfdisk}/bin/sgdisk";
 | 
			
		||||
    })
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  postPatch = ''
 | 
			
		||||
    patchShebangs scripts
 | 
			
		||||
  '';
 | 
			
		||||
@ -26,7 +33,7 @@ in stdenv.mkDerivation rec {
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  buildInputs = [
 | 
			
		||||
    glib udev kmod parted cryptsetup lvm2 dmraid utillinux libbytesize libndctl nss volume_key libyaml
 | 
			
		||||
    glib udev kmod parted gptfdisk cryptsetup lvm2 dmraid utillinux libbytesize libndctl nss volume_key libyaml
 | 
			
		||||
  ];
 | 
			
		||||
 | 
			
		||||
  meta = with stdenv.lib; {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										47
									
								
								pkgs/development/libraries/libblockdev/fix-paths.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								pkgs/development/libraries/libblockdev/fix-paths.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,47 @@
 | 
			
		||||
--- a/src/plugins/part.c
 | 
			
		||||
+++ b/src/plugins/part.c
 | 
			
		||||
@@ -146,7 +146,7 @@ static GMutex deps_check_lock;
 | 
			
		||||
 #define DEPS_LAST 2
 | 
			
		||||
 
 | 
			
		||||
 static const UtilDep deps[DEPS_LAST] = {
 | 
			
		||||
-    {"sgdisk", "0.8.6", NULL, "GPT fdisk \\(sgdisk\\) version ([\\d\\.]+)"},
 | 
			
		||||
+    {"@sgdisk@", "0.8.6", NULL, "GPT fdisk \\(sgdisk\\) version ([\\d\\.]+)"},
 | 
			
		||||
     {"sfdisk", NULL, NULL, NULL},
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@@ -355,7 +355,7 @@ gboolean bd_part_create_table (const gchar *disk, BDPartTableType type, gboolean
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static gchar* get_part_type_guid_and_gpt_flags (const gchar *device, int part_num, guint64 *flags, GError **error) {
 | 
			
		||||
-    const gchar *args[4] = {"sgdisk", NULL, device, NULL};
 | 
			
		||||
+    const gchar *args[4] = {"@sgdisk@", NULL, device, NULL};
 | 
			
		||||
     gchar *output = NULL;
 | 
			
		||||
     gchar **lines = NULL;
 | 
			
		||||
     gchar **line_p = NULL;
 | 
			
		||||
@@ -1325,7 +1325,7 @@ gboolean bd_part_resize_part (const gchar *disk, const gchar *part, guint64 size
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 static gboolean set_gpt_flag (const gchar *device, int part_num, BDPartFlag flag, gboolean state, GError **error) {
 | 
			
		||||
-    const gchar *args[5] = {"sgdisk", "--attributes", NULL, device, NULL};
 | 
			
		||||
+    const gchar *args[5] = {"@sgdisk@", "--attributes", NULL, device, NULL};
 | 
			
		||||
     int bit_num = 0;
 | 
			
		||||
     gboolean success = FALSE;
 | 
			
		||||
 
 | 
			
		||||
@@ -1351,7 +1351,7 @@ static gboolean set_gpt_flag (const gchar *device, int part_num, BDPartFlag flag
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static gboolean set_gpt_flags (const gchar *device, int part_num, guint64 flags, GError **error) {
 | 
			
		||||
-    const gchar *args[5] = {"sgdisk", "--attributes", NULL, device, NULL};
 | 
			
		||||
+    const gchar *args[5] = {"@sgdisk@", "--attributes", NULL, device, NULL};
 | 
			
		||||
     guint64 real_flags = 0;
 | 
			
		||||
     gchar *mask_str = NULL;
 | 
			
		||||
     gboolean success = FALSE;
 | 
			
		||||
@@ -1791,7 +1791,7 @@ gboolean bd_part_set_part_name (const gchar *disk, const gchar *part, const gcha
 | 
			
		||||
  * Tech category: %BD_PART_TECH_GPT-%BD_PART_TECH_MODE_MODIFY_PART
 | 
			
		||||
  */
 | 
			
		||||
 gboolean bd_part_set_part_type (const gchar *disk, const gchar *part, const gchar *type_guid, GError **error) {
 | 
			
		||||
-    const gchar *args[5] = {"sgdisk", "--typecode", NULL, disk, NULL};
 | 
			
		||||
+    const gchar *args[5] = {"@sgdisk@", "--typecode", NULL, disk, NULL};
 | 
			
		||||
     const gchar *part_num_str = NULL;
 | 
			
		||||
     gboolean success = FALSE;
 | 
			
		||||
     guint64 progress_id = 0;
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user