Commit Graph

2483 Commits

Author SHA1 Message Date
Michael Zimmermann 1f5841b4ad Add support for GPT partition names (#741424)
Embedded devices (Android) use GPT partition names to identify
partitions, instead of file system labels.  Add support for viewing and
changing them.

As partition names are used to provide unique identification they are
never copied when copying the contents of one partition to another.

Note that GNU/Linux uses file system labels, UUIDs or device names for
identification during the boot process and afterwards so while partition
names can be used, they are optional and purely for user information.

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood b278782ef6 Remove redundant second if condition in Display_Info()
Remove second inner if condition performing the same check as the outer
if:
    partition.type != GParted::TYPE_UNALLOCATED
2015-02-01 10:08:23 -07:00
Mike Fleetwood e1dc89cd11 Rename class to Dialog_FileSystem_Label (#741424)
class Dialog_Partition_Label   -> Dialog_FileSystem_Label
file Dialog_Partition_Label.h  -> Dialog_FileSystem_Label.h
file Dialog_Partition_Label.cc -> Dialog_FileSystem_Label.cc

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 04450c577c Rename class to OperationLabelFileSystem (#741424)
class OperationLabelPartition   -> OperationLabelFileSystem
file OperationLabelPartition.h  -> OperationLabelFileSystem.h
file OperationLabelPartition.cc -> OperationLabelFileSystem.cc

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 3630b9c83b Rename methods in GParted_Core and Win_GParted classes (#741424)
class GParted_Core:
    label_partition() -> label_filesystem()

class Win_GParted:
    allow_label_partition()    -> allow_label_filesystem()
    activate_label_partition() -> activate_label_filesystem()

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 63aeb150ac Rename member variables and methods in Partition class (#741424)
class Partition:
    have_label    -> have_filesystem_label
    label         -> filesystem_label
    label_known() -> filesystem_label_known()
    get_label()   -> get_filesystem_label()
    set_label()   -> set_filesystem_label()

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood d480800600 Rename enum to OPERATION_LABEL_FILESYSTEM (#741424)
This and the following few commits rename variables, methods, classes,
etc from *label_partition* to *label_filesystem* so that the code also
reflects that it is the label of the file system that is being modified
and to separate it from the name partition operation about to be added.

enum OPERATION_LABEL_PARTITION -> OPERATION_LABEL_FILESYSTEM

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 332a2e7a79 Rename Partition Label to File System Label in the GUI (#741424)
Rename the Partition Label concept to File System Label throughout the
GUI.  This is to better reflect that it is the label of the file system
that is being modified and to separate it from the Partition Name
concept about to be added.

Bug 741424 - Add support for GPT partition names
2015-02-01 10:08:23 -07:00
Mike Fleetwood 8b45219a2d Make swap usage match figures reported by swapon -s (#742647)
GParted reports used figure of active swap space from 4 KiB upwards,
actually 1 page, where as 'swapon -s' reports figures from 0 upwards.
This is because GParted is counting the 1 page swap space overhead as
used space.

    # sfdisk -s /dev/sdb1
    262144
    # mkswap /dev/sdb1
    # swapon /dev/sdb1
    # swapon -s
    Filename                Type            Size    Used    Priority
    /dev/sdb1               partition       262140  0       -1

For this case GParted reports used as 4 KiB.
(ptn size - swap size = 262144 - 262140 = 4)

Instead make GParted report used figure without any overhead from 0
upwards, matching what 'swapon -s' reports.

Bug 742647 - Swap usage doesn't match figures reported by swapon -s
2015-01-28 11:38:53 -07:00
Curtis Gedak d916cee115 Append -git to version for continuing development 2015-01-26 10:35:31 -07:00
Curtis Gedak 23091fbee7 ========== gparted-0.21.0 ========== 2015-01-26 10:01:46 -07:00
Curtis Gedak 570680826d Update copyright year 2015-01-26 09:48:36 -07:00
Enrico Nicoletto 4d0147a508 Updated Brazilian Portuguese translation 2015-01-26 10:56:19 +00:00
Alexandre Franke 68134e533a Updated French translation 2015-01-23 01:32:56 +00:00
Alexandre Franke a4d06f0a6b Updated French translation 2015-01-23 01:30:42 +00:00
Anders Jonsson 3fecfdd2c9 Updated Swedish translation 2015-01-22 21:40:29 +00:00
Milo Casagrande f3e5103282 Updated Italian translation 2015-01-20 07:32:46 +00:00
Daniel Mustieles 7a74aace5c Updated Spanish translation 2015-01-19 18:24:44 +01:00
Wolfgang Stöggl 7227181afd Updated German translation 2015-01-19 13:12:44 +00:00
Daniel Korostil 4fe21b1e93 Updated Ukrainian translation 2015-01-19 04:14:06 +02:00
Phillip Susi 8a952cd4a9 Fix off by one sector error in GParted internal block copy (#742920)
GParted's internal block copy has an off by one sector bug when the
source is before the destination; and the copy is performed backwards
from high block to low block.  It is as though the source and
destination partitions were both one sector earlier on the disk.

In ASCII art it it looks like this:

Initial layout:      x<--SRC--><--DST-->
Actually wrote:               x<--SRC--
Should have written:           <--SRC-->

Affects moving partitions too.

This bug has existed since commit:

    bd9e16f22f
    Thread the internal copy algorithm (#685740)

Effectively the last sector of the partition is missed and one sector
before the start of the partition is corrupted.  Most of the time file
systems don't get around to using the very last sector so didn't notice.

Bug 742920 - GParted internal copy is overstepping partition boundaries
2015-01-16 11:31:14 +00:00
Daniel Mustieles c97a462e7c Updated Spanish translation 2015-01-12 19:17:20 +01:00
Mike Fleetwood be8cc9c084 Allow creation of reiser4 file systems on Linux 3.x (#742511)
With reiser4progs 1.0.7 and earlier mkfs specifically checks for Linux
kernel 2.5 or 2.6.  On Linux 3.x it fails with the following warning:

    # mkfs.reiser4 --yes --label "" /dev/sdb1
    Warn : Linux 3.13.0-39-generic is detected. Reiser4 does not support
    such a platform. Use -f to force over.
    # echo $?
    8

This is fixed in reiser4progs 1.0.8 and later.  From the reiser4progs
SourceForce README.txt:

    . Do not ask for confirmation to work under Linux-3.X;

Found on Ubuntu 12.04 LTS and Ubuntu 14.04 LTS both with reiser4progs
1.0.7 and a Linux 3.x kernel.

Fix by adding "--force" flag to the mkfs command line.

Bug 742511 - Creation of reiser4 file systems fails with unsupported
             warning
2015-01-07 08:44:26 -07:00
Rafael Ferreira 853d5d6d2d Updated Brazilian Portuguese translation 2015-01-03 22:07:37 +00:00
Мирослав Николић fc331eafde Updated Serbian translation 2014-12-27 15:32:50 +01:00
Marek Černocký 2f6385c457 Updated Czech translation 2014-12-26 15:42:57 +01:00
Marek Černocký d156164d63 Updated Czech translation 2014-12-26 10:00:28 +01:00
Piotr Drąg 884c782b18 Updated Polish translation 2014-12-21 20:14:12 +01:00
Mike Fleetwood 6304377811 Correctly capitalise GNOME in the Manual and man page (#739805)
The GNOME Logo & Trademarks page
(http://www.gnome.org/logo-and-trademarks/) says:
    * All the letters in "GNOME" should be capitalized.

Also correctly capitalise the program name as GNOME Partition Editor in
the Manual, and gparted.doap file (used in web git browser).

Bug 739805 - GNOME is incorrectly capitalised on the website and else
             where
2014-12-20 10:02:55 -07:00
Balázs Úr b4ccbb21b0 Updated Hungarian translation 2014-12-19 23:24:35 +00:00
Richard Hughes 366670faf6 Add keywords to the desktop file 2014-12-18 17:57:36 +00:00
Marek Černocký 155c371b1d Updated Czech translation 2014-12-14 15:33:41 +01:00
Mike Fleetwood 95ff4fbdc9 Refactor resize() to make it even easier to understand (#741211)
Split the resizing file system and resizing partition calls in
GParted_Core::resize() into separate grow and shrink code paths.

Note that this also changes the degenerative case of calling resize()
when the partition isn't changing size, for non-swap partitions, from a
file system check step to a successful no-op.  This doesn't matter as my
testing never found resize() to be called when the partition isn't
changing size.

Also correct spelling of local variable success.

Bug 741211 - Remove unnecessary duplicate actions when resizing a
             partition
2014-12-13 10:46:35 -07:00
Mike Fleetwood 99f770ddb0 Stop recreating linux-swap twice when shrinking a partition (#741211)
Shrinking swap partition operation performs these steps:

    Shrink /dev/sdb2 from 2.00 GiB to 1.00 GiB
    + calibrate /dev/sdb2
    + check file system on /dev/sdb2 for errors and (if possible) fix them
        checking is not available for this file system
    + shrink file system
      + create new linux-swap file system
        + mkswap -L "test-swap" -U "bd381eba-5df7-42e2-8e0e-411e9701c995" /dev/sdb2
    + shrink partition from 2.00 GiB to 1.00 GiB
      + create new linux-swap file system
        + mkswap -L "test-swap" -U "bd381eba-5df7-42e2-8e0e-411e9701c995" /dev/sdb2

Resizing a linux-swap partition was partially special cased in
GParted_Core::resize().  Make it fully special cased so that it just
does the following steps.  No more skipped file system checks or extra
resizing.

    1)  Resize partition,
    2)  Recreate linux-swap.

This existing call chain recreates the linux-swap:
    GParted_Core::resize_filesystem()
        linux_swap::resize()

A compound move and resize operation still performs unnecessary checks
and recreates of linux-swap, but less than before.

Bug 741211 - Remove unnecessary duplicate actions when resizing a
             partition
2014-12-11 11:10:09 -07:00
Mike Fleetwood b4acb14ff1 Remove second file system check when growing a partition (#741211)
Shrinking a partition performs a single file system check step, but
growing a partition still performs two file system checks.

    Grow /dev/sda8 from 1.00 GiB to 10.00 GiB
    + calibrate /dev/sda8
    + check file system on /dev/sda8 for errors and (if possible) fix them
    + grow partition from 1.00 GiB to 10.00 GiB
    + check file system on /dev/sda8 for errors and (if possible) fix them
    + grow file system to fill the partition

This is a leftover from the early days of GParted when resizing a
partition used cylinder buffering and performed three file system
checks.  See prior to commit:

    d663c3c277
    removed cylindersize buffering during resize from the filesystems.

Remove the second file system check when growing a partition.

Bug 741211 - Remove unnecessary duplicate actions when resizing a
             partition
2014-12-11 11:10:09 -07:00
Mike Fleetwood 5a93a9c432 Avoid splitting Autoconf check message for libparted version (#740004)
First use of PKG_CHECK_EXISTS causes additional checking messages to be
reported which splits the libparted version check message from it's
result, like this:

    checking for libparted >= 1.7.1 (querying pkg-config)... checking for pkg-config... /usr/bin/pkg-config
    checking pkg-config is at least version 0.9.0... yes
    2.3

Call PKG_CHECK_EXISTS early, before first use to avoid this.  Output
now looks like:

    checking for pkg-config... /usr/bin/pkg-config
    checking pkg-config is at least version 0.9.0... yes
    :
    checking for libparted >= 1.7.1 (querying pkg-config)... 2.3

Bug 740004 - use pkg-config to check for version of libparted
2014-11-20 14:59:56 -07:00
Mike Fleetwood 9c7cb6f496 Use pkg-config Autoconf check for libparted version first (#740004)
Currently ./configure links and runs a program to query the libparted
library version, which is used to determine the availability of some
features.  This makes cross-compiling harder because the compile host
has to fake a virtual installation target in which to run the check.
Because of this, pkg-config based Autoconf checks are preferred.

Switch to using a pkg-config based Autoconf check first to determine the
version of libparted, falling back to the previous method for older
distributions which don't provide a pkg-config file for libparted.

Also small comment tidy-up elsewhere.

Bug 740004 - use pkg-config to check for version of libparted
2014-11-20 14:59:56 -07:00
Timo Jyrinki 2f39337863 Change Finnish translation team web page to l10n.gnome.org 2014-11-03 19:00:45 +02:00
Mike Fleetwood 6220a35dac Rework population of the create new partition file system list
Simplify how the list of file system types is populated in the Create
New Partition dialog.  Change from copying everything and removing
unwanted items to only copying required items.  Makes the code simpler
and therefore easier to understand.
2014-10-30 09:55:01 -06:00
Mike Fleetwood 3373ef07fa Recognise ReFS file system (#738471)
Only recognises ReFS file system.  No other actions are supported.
Requires blkid from util-linux >= 2.24.

Bug #738471 - ReFS file system is not recognised
2014-10-30 09:55:01 -06:00
Mike Fleetwood 88f67058e8 Use supported_filesystem() predicate (#738471)
Use GParted_Core::supported_filesystem() to remove the need to
explicitly list the growing number of recognised, but otherwise
unsupported, file system signatures in multiple places.

Bug #738471 - ReFS file system is not recognised
2014-10-30 09:55:01 -06:00
Mike Fleetwood 8b4b73a8f3 Add supported_filesystem() predicate method (#738471)
Helper to check whether a recognised file system type is supported by
GParted or not.  Supported means there is an implementation class and
will appear in the File System Support dialog.

Make supported_filesystem() a static member function so that it can be
called without a class object so that GParted_Core::GParted_Core()
initialiser isn't called multiple times.  This requires FILESYSTEM_MAP
to become a static member variable too.

Bug #738471 - ReFS file system is not recognised
2014-10-30 09:55:01 -06:00
Mike Fleetwood 58618572b5 Comment and re-order FILESYSTEM enumeration type 2014-10-30 09:55:01 -06:00
Mike Fleetwood e3a1b93a6d Pass by value to get_filesystem_object()
get_filesystem_object() takes a constant reference to a FILESYSTEM, but
FILESYSTEM is just an enumeration.  So that's a pointer to a constant
int.  Just pass by value instead.
2014-10-30 09:55:01 -06:00
Baurzhan Muftakhidinov 53a8ccfe16 Updated Kazakh translation 2014-10-28 09:11:48 +00:00
Mike Fleetwood f672f68863 Check for e4fsprogs commands for ext4 support on RHEL/CentOS 5.x (#738706)
RHEL / CentOS 5.6 and later officially support ext4 file system [1].
From RHEL / CentOS 5.3 ext4 file system was included as a technology
preview.  Ext4 file system tools are in a separate package e4fsprogs,
using uniquely named commands.  The standard e2fsprogs commands only
support ext2 and ext3 file systems.

    # mkfs.ext4 /dev/sdb3
    # tune2fs -l /dev/sdb3
    tune2fs 1.39 (29-May-2006)
    tune2fs: Filesystem has unsupported feature(s) while trying to open /dev/sdb3
    Couldn't find valid filesystem superblock.
    # echo $?
    1
    # tune4fs -l /dev/sdb3
    tune4fs 1.41.12 (17-May-2010)
    Filesystem volume name:   <none>
    Last mounted on:          <not available>
    Filesystem UUID:          ba4a9d58-7728-4b47-8a90-80e772615637
    Filesystem magic number:  0xEF53
    Filesystem revision #:    1 (dynamic)
    Filesystem features:      has_journal ext_attr resize_inode dir_index filetype extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
    ...

For ext4 only, search for the e4fsprogs specific commands first and the
standard e2fsprogs commands second.

[1] RHEL 5.6 Release Notes, 5. Filesystems and Storage
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/5.6_Release_Notes/ar01s05.html

Bug #738706 - GParted doesn't support ext4 on RHEL/CentOS 5.x
2014-10-27 09:32:36 -06:00
Curtis Gedak ad6f73a5f6 Append -git to version for continuing development 2014-10-20 10:02:21 -06:00
Curtis Gedak ce77fff15d ========== gparted-0.20.0 ========== 2014-10-20 09:27:51 -06:00
Milo Casagrande b949858b63 Updated Italian translation 2014-10-13 20:28:55 +00:00
Wolfgang Stöggl 3f636cc26c Updated German translation 2014-10-12 18:21:03 +00:00