Opened 2 years ago

Closed 2 years ago

#12110 closed enhancement (fixed)

GParted-1.0.0

Reported by: Douglas R. Reno Owned by: Bruce Dubbs
Priority: normal Milestone: 9.0
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

New major version

Ported to GTKMM3

Change History (10)

comment:1 by Bruce Dubbs, 2 years ago

Milestone: 8.59.0

Milestone renamed

comment:2 by Douglas R. Reno, 2 years ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:3 by Bruce Dubbs, 2 years ago

The only place in the book that we now reference consolekit is in gparted. There os is only in the section 'Using Gparted' and pkexec.

"Root privileges are required to run Gparted. If you wish to run the application from the menu, further applications and configurations are necessary. Examples of applications that may be used: gksu, kdesudo, or xdg-su. Another solution is to use pkexec, from Polkit-0.116, but some configuration is necessary. Another simple solution is ssh-askpass-8.0p1. Below, we describe these two alternatives: "ssh-askpass" and "pkexec". "

If we remove the part about pkexec, I think we can archive consolekit.

comment:4 by Bruce Dubbs, 2 years ago

GParted 1.0.0 (2019-05-29)

Release Notes

This release of GParted includes a significant undertaking to migrate the code base from gtkmm2 to gtkmm3 (our GTK3 port). Thanks go to Luca Bacci and Mike Fleetwood for making this happen.

With this major change we bump up the major version number. This 1.0.0 release is not meant to indicate that GParted is more stable or less stable than before. Instead it means that GParted now requires gtkmm3 instead of gtkmm2. Note that several other dependencies have changed as well.

As with our other releases, this one also includes several enhancements, bug fixes and language translation updates.

### Key changes include:

  • Port to Gtkmm 3
  • Port to GNOME 3 yelp-tools documentation infrastructure
  • Enable online resizing of extended partitions
  • Add F2FS support for read disk usage, grow, and check
  • Fix slow refreshing of NTFS file systems

Bug Fixes

  • Port to Gtkmm 3 (#7, !9)
  • Increase minimums to libparted 2.2 and glibmm 2.32 (!22)
  • Enable online resizing of extended partitions (!23)
  • Port to GNOME 3 yelp-tools documentation infrastructure (!24)
  • Remove support for btrfs-progs < 3.12 (!26)
  • Set title of Resize/Move dialog for an extended partition (#44, !28)
  • Add F2FS support for read disk usage, grow, and check (!29)
  • Replace String::ucompose() with Glibmm equivalent (#46, !31)
  • Always show menu images (!32)
  • Save partition layout to gparted_details.htm (#639176)
  • Could not stat device /dev/mapper/No RAID disks - No such file (#786031)
  • File include/Partition.h: performance problem (#788813)
  • File include/HBoxOperations.h: performance problem (#788814)
  • Display more version and configuration information (!34)
  • After GTK3 port icons are too big on KDE (#39, !35)
  • Set partition type when clearing partition contents (!36)
  • Fix slow refreshing of NTFS file systems (#47, !37)
  • Fix minor issues with File System Support rescanning (!38)
  • Modern Gtk3 - part 1 (!25)
  • Improve partition information mount status formatting (#52)
  • Request natural width in Gtk::ScrolledWindows for Gtk >= 3.22 (!39)
  • Limit wrapping Gtk::Labels (!40)
  • NTFS Resize results in Partition Information Warning on Refresh (#57, !42)

Dependencies (new/updated)

  • gtkmm >= 3.4.0
    • glibmm >= 2.32
    • libparted >= 2.2
    • yelp-tools

Dependencies (no longer needed)

  • gnome-doc-utils
  • rarian
  • rarian-compat

comment:5 by Bruce Dubbs, 2 years ago

This was the last package that needed gtkmm2. inkscape can use gtkmm2 or gtkmm3. After this is installed, we should be able to archive gtkmm2.

in reply to:  3 comment:6 by DJ Lucas, 2 years ago

Replying to bdubbs:

The only place in the book that we now reference consolekit is in gparted. There os is only in the section 'Using Gparted' and pkexec.

"Root privileges are required to run Gparted. If you wish to run the application from the menu, further applications and configurations are necessary. Examples of applications that may be used: gksu, kdesudo, or xdg-su. Another solution is to use pkexec, from Polkit-0.116, but some configuration is necessary. Another simple solution is ssh-askpass-8.0p1. Below, we describe these two alternatives: "ssh-askpass" and "pkexec". "

If we remove the part about pkexec, I think we can archive consolekit.

Even that shouldn't be necessary, just drop the consolkit part of the note. That said, I'm thinking members of the disk, wheel, and adm groups should be able to run the application, and this would be a great authorization example for the book (though I'm sure there are other places where this is true as well):

cat > /usr/share/polkit-1/actions/org.gnome.gparted.policy << "EOF" &&
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
 "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>

  <action id="org.freedesktop.policykit.pkexec.run-gparted">
    <description>Run GParted</description>
    <message>Authentication is required to run GParted</message>
    <defaults>
      <allow_any>auth_admin</allow_any>
      <allow_inactive>auth_admin</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
    <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/gparted</annotate>
    <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
  </action>

</policyconfig>
EOF
chmod -v 0644 /usr/share/polkit-1/actions/org.gnome.gparted.policy &&

cat > /usr/share/polkit-1/rules.d/org.gnome.gparted.rules << "EOF" &&
/* Allow users in adm group to run GParted without authentication */
polkit.addRule(function(action, subject) {
    if (action.id == "org.gnome.pkexec.gparted" &&
        subject.isInGroup("adm")) {
        return polkit.Result.YES;
    }
});

/* Allow users in disk group to run GParted without authentication */
polkit.addRule(function(action, subject) {
    if (action.id == "org.gnome.pkexec.gparted" &&
        subject.isInGroup("disk")) {
        return polkit.Result.YES;
    }
});

/* Allow users in wheel group to run GParted without authentication */
polkit.addRule(function(action, subject) {
    if (action.id == "org.gnome.pkexec.gparted" &&
        subject.isInGroup("wheel")) {
        return polkit.Result.YES;
    }
});
EOF
chmod 644 /usr/share/polkit-1/rules.d/org.gnome.gparted.rules

Note that the above has not yet been tested, but should work barring any syntax errors.

comment:7 by Douglas R. Reno, 2 years ago

The problem with removing gtkmm2 is the need for gnome-docking-library to be added. I haven't really looked into that yet, finally settling down to take care of tickets and other work.

comment:8 by Bruce Dubbs, 2 years ago

Owner: changed from Douglas R. Reno to Bruce Dubbs
Status: assignednew

comment:9 by Bruce Dubbs, 2 years ago

Status: newassigned

comment:10 by Bruce Dubbs, 2 years ago

Resolution: fixed
Status: assignedclosed

Fixed at revision 21836.

Note: See TracTickets for help on using tickets.