1. 15 Jan, 2021 1 commit
  2. 26 Feb, 2020 1 commit
  3. 09 Nov, 2019 2 commits
  4. 03 Apr, 2019 1 commit
    • Mike Fleetwood's avatar
      Update distro specific package installation instructions · 23f956bb
      Mike Fleetwood authored
      - Back in Fedora 22 the distribution switched from using yum to dnf for
        package installation, while CentOS / RHEL continues to use yum.
        Separate out package instructions.
      
      - Update package dependencies for what is required on current versions
        of the documented distributions.
      23f956bb
  5. 27 Mar, 2019 1 commit
  6. 01 Mar, 2019 2 commits
  7. 11 Feb, 2019 1 commit
  8. 24 Aug, 2018 1 commit
  9. 19 Jun, 2018 1 commit
  10. 08 Feb, 2018 1 commit
    • Curtis Gedak's avatar
      Reduce dependency on scrollkeeper (#743318) · 0eb9f1fc
      Curtis Gedak authored
      Scrollkeeper and the associated OMF catalog files are used by the
      GNOME 2 version of yelp to display the GParted help manual.  To see how
      this works try the following command:
      
        yelp ghelp:gparted
      
      GNOME version 3 and higher yelp do not require scrollkeeper or the OMF
      catalog files to properly display the GParted help manual.  And in fact
      GNOME 3 deprecated the GNOME 2 method of building and installing GNOME
      help documents altogether; including use of GNOME_DOC_INIT autoconf
      macro, the gnome-doc-utils package and use of scrollkeeper.
      
        [GNOME 3] GNOME Goal: Port To New Documentation Infrastructure
        https://wiki.gnome.org/Initiatives/GnomeGoals/NewDocumentationInfrastructure
      
      Further, the next release of Debian, Debian 10 (Buster), will be
      removing the scrollkeeper / rarian package.
      
        rarian: Don't release with Buster
        https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=885657
      
      GParted is still a GNOME 2 app using GNOME 2 documentation build system
      using autoconf GNOME_DOC_INIT macro.
      
        [GNOME 2] Migrating your documentation to gnome-doc-utils
        https://wiki.gnome.org/Projects/GnomeDocUtils/MigrationHowTo
      
      This is needed to build GParted documentation on still supported GNOME 2
      distributions RHEL / CentOS 6.  So avoid requiring deprecated
      scrollkeeper on GNOME 3 by automatically disabling scrollkeeper database
      updates when the scrollkeeper-update command is not available.
      
        Executable          | Configure option used  | Use scrollkeeper
        scrollkeeper-update | on command line        | when building help
        exists?             |                        | for GParted?
        --------------------+------------------------+-------------------
        Yes                 | <none>                 | Yes
        Yes                 | --enable-scrollkeeper  | Yes
        Yes                 | --disable-scrollkeeper | No
                            |                        |
        No                  | <any>                  | No
      
      Note that because GParted is still using the GNOME 2 documentation build
      system it still builds and installs OMF files.  It is just that they are
      not required with GNOME 3 yelp and this commit automatically disables
      updating the scrollkeeper database when the scrollkeeper-update command
      is not available.
      
      Bug 743318 - configure script missing check for scrollkeeper dependency
      0eb9f1fc
  11. 01 Sep, 2017 6 commits
    • Mike Fleetwood's avatar
      Only when configured, grant root access to the X11 display (#776437) · f38ccd02
      Mike Fleetwood authored
      GParted fails to display when run under Wayland [1][2][3].  This is
      because by intentional design Wayland doesn't allow applications with
      root privileges access to the display [4].
      
      As an interim workaround make the gparted shell wrapper use xhost to
      grant root access to the X11 server if root doesn't already have access,
      but only when configured.  Granting root access must be explicitly
      enabled when building GParted like this:
          ./configure --enable-xhost-root
      It defaults to disabled.  When gpartedbin binary ends the shell wrapper
      revokes root access only if it granted such access.
      
      [1] GNOME Bug 776437 - GParted fails to run as root under Wayland
          https://bugzilla.gnome.org/show_bug.cgi?id=776437
      
      [2] Ubuntu Bug 1652282 - GParted does not work in GNOME on Wayland
          https://bugs.launchpad.net/ubuntu/+source/gparted/+bug/1652282
      
      [3] Fedora Bug 1397103 - gparted not working under Wayland
          https://bugzilla.redhat.com/show_bug.cgi?id=1397103
      
      [4] Common Fedora 25 bugs
          Running graphical apps with root privileges (e.g. gparted) does not
          work on Wayland
          https://fedoraproject.org/wiki/Common_F25_bugs#wayland-root-apps
      
      Bug 776437 - GParted fails to run as root under Wayland
      f38ccd02
    • Mike Fleetwood's avatar
      Remove unnecessary autoconf check for pkexec --disable-internal-agent option (#776437) · 6f521c4d
      Mike Fleetwood authored
      The pkexec --disable-internal-agent option was introduced by this commit
      [1] in polkit 0.98 [2] which is before the minimum 0.102 version needed
      to run X11 apps.  Therefore the option will always be available.  Remove
      the unnecessary check.
      
      [1] https://cgit.freedesktop.org/polkit/commit/?id=f071d4561dfe8dd9cfd4e29fddec7bc82fd658aa
          pkexec: add --disable-internal-agent option
      
      [2] https://cgit.freedesktop.org/polkit/tree/NEWS?id=0.98#n25
          polkit NEWS entry for 0.98
      
      Bug 776437 - GParted fails to run as root under Wayland
      6f521c4d
    • Mike Fleetwood's avatar
      Check for pkexec >= 0.102 which supports execution of X11 apps (#776437) · 11c25129
      Mike Fleetwood authored
      On CentOS 6 with polkit version 0.96 pkexec fails to execute gparted
      shell wrapper as root like this:
      
          $ env | grep DISPLAY
          DISPLAY=:0.0
          $ sh -x /usr/local/bin/gparted
          ...
          + pkexec /usr/local/bin/gparted
          (gpartedbin:8011): Gtk-WARNING **: cannot open display:
      
      This is because polkit didn't support setting the DISPLAY environment
      variable to allow execution of X11 applications until the introduction
      of the allow_gui annotation by this commit in polkit 0.102:
      
          https://cgit.freedesktop.org/polkit/commit/?id=7850d27017fed1834268a852350ae85381fbb110
          Bug 38769 - pkexec: Support running X11 apps
      
      Make configure only use pkexec version 0.102 or higher as the privilege
      escalation program.  Otherwise configure falls back to checking for the
      other privilege escalation programs as it did before.
      
      Bug 776437 - GParted fails to run as root under Wayland
      11c25129
    • Mike Fleetwood's avatar
      Add required polkit action file (#776437) · f35e734a
      Mike Fleetwood authored
      An action file is always needed with polkit to describe the privileged
      actions that are available to the subject (client program).  For GParted
      the only available action is to run the gparted shell script as root.
      
      Note that the polkit action file will be installed into location
      $(prefix)/share/polkit-1/actions.  This is required by the GNU Coding
      Standards [1] and to prevent 'make distcheck' from failing [2].  However
      polkit only uses /usr/share/polkit-1/actions for it's action files [3].
      This dilemma was discussed in this Bugzilla bug 776437 and on the
      general Automake discussion email list [4].  The solution is to simply
      document in the README file that a manual additional installation step
      may be required.
      
      The action file is marked as translatable with the underscore (_) of the
      _description and _message tags identifying the string to be translated.
      
      Use of INTLTOOL_POLICY_RULE in Makefile.am to merge translations into
      the polkit action file necessitates increasing the minimum version of
      intltool to 0.36.0 where it was first introduced in intltool.m4.  This
      will prevent GParted building on RedHat/CentOS 5 which only has intltool
      0.35.0.  But that doesn't matter because RedHat/CentOS 5 reached end of
      life on 31st March 2017.
      
      [1] GNU Coding Standards, 7.2.5 Variables for Installation Directories
          https://www.gnu.org/prep/standards/standards.html#Directory-Variables
      
      [2] Automake Manual, 27.10 Installing to Hard-Coded Locations
          https://www.gnu.org/software/automake/manual/automake.html#Hard_002dCoded-Install-Paths
          "My package needs to populate the installation directory of another
          package at install-time.  I can easily compute that installation
          directory in configure, but if I install files therein,
          'make distcheck' fails.  How else should I do?"
      
      [3] polkit(8), Declaring Actions
          https://www.freedesktop.org/software/polkit/docs/latest/polkit.8.html#polkit-declaring-actions
      
          "A mechanism need to declare a set of actions in order to use
          polkit.  Actions correspond to operations that clients can request
          the mechanism to carry out and are defined in XML files that the
          mechanism installs into the /usr/share/polkit-1/actions directory."
      
      [4] Not installing to hard-coded locations vs polkit's fixed location
          http://lists.gnu.org/archive/html/automake/2017-08/msg00015.html
      
      Bug 776437 - GParted fails to run as root under Wayland
      f35e734a
    • Mike Fleetwood's avatar
      Add detection of pkexec root privilege escalation program (#776437) · b47528b6
      Mike Fleetwood authored
      Many of the distributions (confirmed for Arch Linux, Debian, Fedora,
      OpenSUSE, RedHat/CentOS and Ubuntu but likely many others too) are now
      using polkit as the mechanism to authorise privileged actions, including
      using it to authorise GParted to run as root in their packages of
      GParted.  Therefore make the GParted configure script check for the
      pkexec command.
      
      Use pkexec with the --disable-internal-agent option when available,
      preventing pkexec using it's own textual authentication agent.  When
      running GParted from a desktop icon or menu there is no terminal with
      which to interact with the textual authentication agent to it can't be
      used.  The desktop's graphical agent must be running.  This matches how
      some distributions already use polkit in their own packages of GParted.
      
      Required actions file will be added in the next commit.
      
          polkit(8)
          https://www.freedesktop.org/software/polkit/docs/latest/polkit.8.html
      
          pkexec(1)
          https://www.freedesktop.org/software/polkit/docs/latest/pkexec.1.html
      
      Bug 776437 - GParted fails to run as root under Wayland
      b47528b6
    • Mike Fleetwood's avatar
      Move root privilege escalation into gparted wrapper script (#776437) · a2cc5014
      Mike Fleetwood authored
      Move calling of the privilege escalation program which allows a normal
      user to run GParted as root from the desktop file into the gparted
      wrapper script.  This is in preparation for further changes needed to
      grant root access to the X11 display under Wayland.
      
      Don't introduce yet another script so that there aren't two different
      names to run GParted by for normal users and root.  Using the same
      gparted name but placing two different scripts at /usr/bin/gparted and
      /usr/sbin/gparted is not possible because on Arch Linux /usr/sbin is a
      symbolic link to /usr/bin.
      
          Frequently asked questions, Does Arch follow the FHS?
          https://wiki.archlinux.org/index.php/Frequently_asked_questions#Does_Arch_follow_the_FHS.3F
      
          "Arch Linux follows the file system hierarchy for operating systems
          using the systemd service manager.  See file-hierarchy(7) for an
          explanation of each directory along with their designations.  In
          particular, /bin, /sbin, and /usr/sbin are symbolic links to
          /usr/bin, and /lib (and /lib64 if applicable) are symbolic links to
          /usr/lib".
      
      Bug 776437 - GParted fails to run as root under Wayland
      a2cc5014
  12. 10 Jul, 2017 1 commit
    • pali's avatar
      Add support for UDF file system (#784533) · 5f327feb
      pali authored
      Add support for detecting UDF file systems and formatting hard disks
      with revision 2.01 UDF file systems using udftools.  Formatting optical
      disks or any other media types is not supported yet.  Changing label or
      UUID after formatting is not supported as the tools do not yet exist.
      
      Bug 784533 - Add support for UDF file system
      5f327feb
  13. 02 Jun, 2017 1 commit
  14. 14 Jan, 2017 1 commit
  15. 06 Aug, 2016 1 commit
    • Mike Fleetwood's avatar
      Remove remaining use of retired vol_id · 91e5a096
      Mike Fleetwood authored
      Vol_id has been retired and removed from all supported distributions.
      See earlier commit "Remove use of retired vol_id from FS_Info module
      (#767842)" for more details.  Therefore remove it's use from GParted
      entirely.
      91e5a096
  16. 29 Jan, 2016 1 commit
  17. 03 Jan, 2016 1 commit
  18. 18 Aug, 2015 1 commit
    • Mike Fleetwood's avatar
      Fix configuration version mismatch when using custom install of libparted (#753525) · 050366f6
      Mike Fleetwood authored
      When configuring GParted build with a custom install of libparted the
      configure script is using the wrong version number for the version of
      libparted.  It uses the version of the system install of libparted,
      rather that the version of the specified custom install of libparted.
      
      For example configuring GParted build on CentOS 7 with system provided
      libparted 3.1 and custom install of libparted 3.2 from GIT in
      /tmp/parted-3.2-git:
          $ export CPPFLAGS=-I/tmp/parted-3.2-git/include
          $ export LDFLAGS=-L/tmp/parted-3.2-git/lib
          $ export LD_RUN_PATH=/tmp/parted-3.2-git/lib
          $ ./configure
          ...
          checking for libparted >= 1.7.1 (querying pkg-config)... 3.1
          checking for 2.0 <= libparted <= 3.0 (loop table creation doesn't delete old partitions)... (cached) no
          checking for libparted >= 2.2 (improved pt re-read)... (cached) yes
          checking for ped_file_system_resize in -lparted... no
          checking for ped_file_system_resize in -lparted-fs-resize... yes
          checking for libparted >= 3.2 (online resize)... (cached) no
          ...
          $ make
          $ ldd src/gpartedbin | fgrep libparted
              libparted-fs-resize.so.0 => /tmp/parted-3.2-git/lib/libparted-fs-resize.so.0 (0x00007f9a460ee000)
              libparted.so.2 => /tmp/parted-3.2-git/lib/libparted.so.2 (0x00007f9a45ea3000)
      Configure script used version 3.1 as reported by pkg-config to make most
      of the decisions (those version related checks with cached results) but
      the executable was still linked with the custom libparted 3.2 install.
      
      Temporarily rename the system libparted pkg-config file out of the way:
          # cd /usr/lib64/pkgconfig
          # mv libparted.pc libparted.pc-NOT
      and reconfigure the GParted build:
          $ ./configure
          ...
          checking for libparted >= 1.7.1 (querying pkg-config)... not found
          checking for libparted >= 1.7.1 (querying libparted)... 3.2.25-5a92
          checking for 2.0 <= libparted <= 3.0 (loop table creation doesn't delete old partitions)... (cached) no
          checking for libparted >= 2.2 (improved pt re-read)... (cached) yes
          checking for ped_file_system_resize in -lparted... no
          checking for ped_file_system_resize in -lparted-fs-resize... yes
          checking for libparted >= 3.2 (online resize)... (cached) yes
          ...
      Now configure is having to compile a program with the custom install of
      libparted and gets the correct version.
      
      Restore libparted pkg-config file:
          # mv libparted.pc-NOT libparted.pc
      and this time set environment variable PKG_CONFIG_PATH to inform
      pkg-config of the additional directory to search for .pc files before
      the default system location:
          $ export PKG_CONFIG_PATH=/tmp/parted-3.2-git/lib/pkgconfig
          $ ./configure
          ...
          checking for libparted >= 1.7.1 (querying pkg-config)... 3.2.25-5a92
          checking for 2.0 <= libparted <= 3.0 (loop table creation doesn't delete old partitions)... (cached) no
          checking for libparted >= 2.2 (improved pt re-read)... (cached) yes
          checking for ped_file_system_resize in -lparted... no
          checking for ped_file_system_resize in -lparted-fs-resize... yes
          checking for libparted >= 3.2 (online resize)... (cached) yes
          ...
      Now configure is getting the correct version of the custom install of
      libparted when querying pkg-config and thus making the correct
      decisions.
      
      Update the README file to reflect the need to also set the
      PKG_CONFIG_PATH environment variable when building GParted with a custom
      install of libparted.
      
      Bug 753525 - Configuration issues when using non-system location or
                   non-released versions of libparted
      050366f6
  19. 10 Aug, 2015 3 commits
    • Mike Fleetwood's avatar
      Update names of the ntfs and reiserfs specific packages (#753436) · ff3f51ac
      Mike Fleetwood authored
      The ntfs-3g package previously provided the FUSE based NTFS driver to
      mount the file system and ntfsprogs provided the user space tools.  In
      April 2011 the packages have merged [1] forming ntfs-3g_ntfsprogs.  Arch
      Linux / Debian / Slackware / Ubuntu now just have an ntfs-3g package
      with everything; where as CentOS / Fedora / openSUSE are sticking with
      the original two package names.  Reverse the order of the needed
      packages to:
      
          ntfs-3g / ntfsprogs
      
      [1] Release: NTFS-3G + NTFSPROGS 2011.4.12
          http://www.tuxera.com/release-ntfs-3g-ntfsprogs-2011-4-12/
      
      For reiserfs the upstream package is named reiserfsprogs.  Arch Linux /
      Debian / Slackware / Ubuntu use this name; but CentOS / Fedora name it
      reiserfs-utils and openSUSE names it just reiserfs.  Update the README
      file with all 3 package names.
      
          reiserfsprogs / reiserfs-utils / reiserfs
      
      In the File System Support dialog just use the first 2 package names as
      we don't want to make the dialog too wide with all 3 names and hopefully
      on openSUSE it is more obvious that the reiserfs package is needed to
      support the reiserfs file system.
      
      NOTE:
      Again this slightly increases the width of the File System Support
      dialog on my CentOS 6 desktop with default fonts, now from 676 to 707
      pixels.  Again still well within the 800 wide target and still narrower
      than the main window.
      
      Bug 753436 - Update documentation of GParted software dependencies
      ff3f51ac
    • Mike Fleetwood's avatar
      Update name of the btrfs file system specific package (#753436) · 4160ae50
      Mike Fleetwood authored
      In Fedora bug report:
          Bug 1176108 - Warning shown on BTRFS partition because of missing btrfs-tools package
          https://bugzilla.redhat.com/show_bug.cgi?id=1176108#c0
      The user said:
          However there is no btrfs-tools package in the standard Fedora repo.
          There is a btrfs-progs package, which is already installed.  It's
          unclear whether this is a real error or simply a mismatched package
          name.
      
      The upstream software is named btrfs-progs.  Arch Linux / CentOS /
      Fedora / Slackware use the upstream name.  Debian / Ubuntu name it
      btrfs-tools and openSUSE calls it btrfsprogs (no dash).
      
      Rename the needed software to:
      
          btrfs-progs / btrfs-tools
      
      Upstream name first separated by slash from alternative names
      distributions use.
      
      NOTE:
      This slightly increases the width of the File System Support dialog on
      my CentOS 6 desktop with default fonts, from 655 to 676 pixels.  Still
      well within the 800 wide target and still narrower that the main window.
      
      Bug 753436 - Update documentation of GParted software dependencies
      4160ae50
    • Mike Fleetwood's avatar
      Document blkid command as a mandatory requirement (#753436) · 749a2495
      Mike Fleetwood authored
      Update the README file to document the blkid command as a mandatory
      requirement for GParted.  GParted will run without blkid but it is
      needed to detect a number of file systems which libparted doesn't and in
      a number of other situations.
      
      Blkid is needed to detect these file systems:
          exfat
          f2fs
          ReFS
          SWRaid
          ZFS
      
      Blkid also detects these file systems (for which GParted has simple
      internal detection but libparted, mostly, doesn't detect):
          btrfs      (detected by libparted >= 3.2)
          LVM2 PV
          LUKS
          nilfs2     (detected by libparted >= 2.4)
          reiser4
      
      Blkid is also needed for these commits:
      
      1)  f8faee63
          Avoid whole disk FAT being detected as MSDOS partition table (#743181)
          (with libparted 1.9.0 to 2.3 inclusive)
      
      2)  9e5e9f56
          Enhance file system detection to use FS_Info method - blkid
          (Detect file systems with sector sizes other than 512 bytes with
          libparted 2.2)
      
      Other changes to the DISTRIBUTION NOTES section of the README file:
      * Drop NOTE about vol_id and blkid being used to read volume labels for
        specific file systems and read the UUIDs.  Vol_id was deprecated in
        May 2009 and is not included in any currently supported distribution.
        Blkid is now mandatory.  List of optional commands at the end of the
        section seems to cover everything that is necessary.
      * Indent description of optional commands at the end of the section to
        match the indentation earlier in the section.
      * Line wrap the section at column 72 to match the rest of the file.
      
      Bug 753436 - Update documentation of GParted software dependencies
      749a2495
  20. 01 Jul, 2015 1 commit
    • Mike Fleetwood's avatar
      Display device serial numbers (#751251) · 4b72ecd4
      Mike Fleetwood authored
      Run "hdparm -I /dev/DISK" to get the hard drive serial number of
      every device which has one and display it in the Device Information.
      The displayed value can either be the actual serial number, "none" or
      blank.  "none" means the device doesn't have a hard drive serial number,
      such as for Linux software RAID arrays, BIOS fake RAID arrays or USB
      flash drives.  Blank means something went wrong getting the serial
      number.  Either it couldn't be found in the hdparm output or the hdparm
      command wasn't installed.
      
      Example real hard drive:
          # hdparm -I /dev/sda
          ...
          ATA device, with non-removable media
                  Model Number:       SAMSUNG HM500JI
                  Serial Number:      S1WFJDSZ123732
          ...
      
      Example Linux software RAID array:
          # hdparm -I /dev/md127
      
          /dev/md127:
           HDIO_DRIVE_CMD(identify) failed: Inappropriate ioctl for device
      
      On my desktop with 4 internal hard drives 2 Linux software RAID arrays
      on those hard drives, 2 USB flash drives and 1 USB hard drive attached,
      running hdparm 9 times added 0.07 seconds to the device refresh time.
      
      Bug 751251 - Show serial number in device information
      4b72ecd4
  21. 20 Sep, 2014 1 commit
    • Mike Fleetwood's avatar
      README: Correct env variables to build using specific libparted version · 826d9d47
      Mike Fleetwood authored
      CPPFLAGS - Needed to instruct the compiler to use libparted include
      files, <parted/parted.h> etc, from the non-default location.
      
      LD_LIBRARY_PATH - Not needed to specify an additional directory to find
      libparted shared libraries at run time, as the linker build the
      additional directory into the executable based on the LD_RUN_PATH
      environment variable.
      826d9d47
  22. 14 Sep, 2014 2 commits
  23. 31 Aug, 2014 1 commit
    • Mike Fleetwood's avatar
      Automatically enable online resize with libparted >= 3.2 (#734076) · af053440
      Mike Fleetwood authored
      Configure script checks for libparted version >= 3.2 to automatically
      determine the availability of online resize capability in libparted.
      This can be overridden from the ./configure command line.  Override
      enable when an older version of libparted has been patched to include
      online resize support with:
      
          ./configure --enable-online-resize
      
      Override disable with libparted 3.2 or later to disable the feature when
      it is not wanted with:
      
          ./configure --disable-online-resize
      
      Note that GParted also requires, and checks for at runtime, Linux
      kernel >= 3.6 for online resize support.  See commit for more details:
      
          de2844d0
          Add online resize support (#694622)
      
      Bug #734076 - Autodetect parted online partition resizing capability
      af053440
  24. 04 Apr, 2014 1 commit
  25. 08 Feb, 2014 1 commit
  26. 06 Jan, 2014 1 commit
  27. 24 Nov, 2013 1 commit
    • Phillip Susi's avatar
      Add online resize support (#694622) · de2844d0
      Phillip Susi authored
      Many file systems are capable of growing while mounted, and a few can
      even shrink.  This support must be explicitly enabled at configure time
      with the --enable-online-resize flag and depends on a patched libparted.
      Also requires kernel >= 3.6 for partition resizing, even if the
      partition is in use (BLKPG_RESIZE_PARTITION).
      
      Thanks to Mike Fleetwood for double check mark idea instead of a second
      column to show the online grow/shrink.
      
      Bug #694622 - Add support for online resize
      de2844d0
  28. 08 Oct, 2013 1 commit
  29. 27 May, 2013 1 commit
  30. 05 May, 2013 1 commit
    • Curtis Gedak's avatar
      Add xdg-su to README (#699626) · 00960e01
      Curtis Gedak authored
      Add xdg-su to list of possible programs used to acquire root
      privileges in the gparted.desktop file.
      
      Bug #699626 - Enable gparted.desktop to prompt for root on default
                    openSUSE installation
      00960e01