Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 100f0b032dcb
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 059ce69f3947
Choose a head ref
  • 2 commits
  • 2 files changed
  • 2 contributors

Commits on Jun 6, 2019

  1. libblockdev: add gptfdisk as a dependency

    This fixes #62749 (sgdisk needed for creating luks-encrypted ext4
    volumes via udisk2).
    lightbulbjim committed Jun 6, 2019
    Copy the full SHA
    c0f8a9f View commit details

Commits on Jun 8, 2019

  1. Merge pull request #62757 from lightbulbjim/libblockdev-sgdisk

    libblockdev: add gptfdisk as a dependency
    worldofpeace authored Jun 8, 2019

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    059ce69 View commit details
Showing with 57 additions and 3 deletions.
  1. +10 −3 pkgs/development/libraries/libblockdev/default.nix
  2. +47 −0 pkgs/development/libraries/libblockdev/fix-paths.patch
13 changes: 10 additions & 3 deletions pkgs/development/libraries/libblockdev/default.nix
Original file line number Diff line number Diff line change
@@ -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 changes: 47 additions & 0 deletions pkgs/development/libraries/libblockdev/fix-paths.patch
Original file line number Diff line number Diff line change
@@ -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;