:get_tmp_dir() instead of hardcoding it as '/tmp' :find_program_in_path()
* use Glib::get_tmp_dir() instead of hardcoding it as '/tmp' * use Glib::find_program_in_path() instead af a system/which combi * display current device in windowtitle
This commit is contained in:
parent
adb71887af
commit
591a8f3db0
|
@ -1,3 +1,9 @@
|
||||||
|
2006-01-24 Bart Hakvoort <hakvoort@cvs.gnome.org>
|
||||||
|
|
||||||
|
* use Glib::get_tmp_dir() instead of hardcoding it as '/tmp'
|
||||||
|
* use Glib::find_program_in_path() instead af a system/which combi
|
||||||
|
* display current device in windowtitle
|
||||||
|
|
||||||
2006-01-22 Bart Hakvoort <hakvoort@cvs.gnome.org>
|
2006-01-22 Bart Hakvoort <hakvoort@cvs.gnome.org>
|
||||||
|
|
||||||
* correct partitiontype of destination is now set while copying
|
* correct partitiontype of destination is now set while copying
|
||||||
|
|
|
@ -45,6 +45,8 @@ private:
|
||||||
void on_signal_show() ;
|
void on_signal_show() ;
|
||||||
void thread_apply_operation( Operation * operation ) ;
|
void thread_apply_operation( Operation * operation ) ;
|
||||||
|
|
||||||
|
void on_response( int response_id ) ;
|
||||||
|
|
||||||
Gtk::Label label_current ;
|
Gtk::Label label_current ;
|
||||||
Gtk::ProgressBar progressbar_all, progressbar_current ;
|
Gtk::ProgressBar progressbar_all, progressbar_current ;
|
||||||
Gtk::TreeView treeview_operations ;
|
Gtk::TreeView treeview_operations ;
|
||||||
|
|
|
@ -25,7 +25,6 @@
|
||||||
#include "../include/Dialog_Partition_Info.h"
|
#include "../include/Dialog_Partition_Info.h"
|
||||||
#include "../include/Dialog_Partition_New.h"
|
#include "../include/Dialog_Partition_New.h"
|
||||||
#include "../include/Operation.h"
|
#include "../include/Operation.h"
|
||||||
#include "../include/Dialog_Progress.h"
|
|
||||||
#include "../include/Dialog_Partition_Resize_Move.h"
|
#include "../include/Dialog_Partition_Resize_Move.h"
|
||||||
#include "../include/Dialog_Partition_Copy.h"
|
#include "../include/Dialog_Partition_Copy.h"
|
||||||
#include "../include/GParted_Core.h"
|
#include "../include/GParted_Core.h"
|
||||||
|
@ -41,6 +40,8 @@
|
||||||
#include <gtkmm/statusbar.h>
|
#include <gtkmm/statusbar.h>
|
||||||
#include <gtkmm/liststore.h>
|
#include <gtkmm/liststore.h>
|
||||||
#include <gtkmm/combobox.h>
|
#include <gtkmm/combobox.h>
|
||||||
|
#include <gtkmm/progressbar.h>
|
||||||
|
#include <gtkmm/scrolledwindow.h>
|
||||||
|
|
||||||
#include <unistd.h> //should be included by gtkmm headers. but decided to include it anyway after getting some bugreports..
|
#include <unistd.h> //should be included by gtkmm headers. but decided to include it anyway after getting some bugreports..
|
||||||
|
|
||||||
|
|
|
@ -88,7 +88,7 @@ Dialog_Progress::Dialog_Progress( const std::vector<Operation> & operations )
|
||||||
expander_details .set_use_markup( true ) ;
|
expander_details .set_use_markup( true ) ;
|
||||||
expander_details .add( scrolledwindow ) ;
|
expander_details .add( scrolledwindow ) ;
|
||||||
|
|
||||||
this ->get_vbox() ->pack_start( expander_details, Gtk::PACK_EXPAND_WIDGET );
|
this ->get_vbox() ->pack_start( expander_details, Gtk::PACK_SHRINK ) ;
|
||||||
this ->get_vbox() ->set_spacing( 5 ) ;
|
this ->get_vbox() ->set_spacing( 5 ) ;
|
||||||
|
|
||||||
this ->add_button( Gtk::Stock::CANCEL, Gtk::RESPONSE_NONE ) ;
|
this ->add_button( Gtk::Stock::CANCEL, Gtk::RESPONSE_NONE ) ;
|
||||||
|
@ -233,6 +233,19 @@ void Dialog_Progress::thread_apply_operation( Operation * operation )
|
||||||
pulse = false ;
|
pulse = false ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Dialog_Progress::on_response( int response_id )
|
||||||
|
{
|
||||||
|
if ( pulse && ( response_id == Gtk::RESPONSE_DELETE_EVENT || response_id == Gtk::RESPONSE_CANCEL ) )
|
||||||
|
{
|
||||||
|
//FIXME i guess this is the best place to implement the cancel. there are 2 ways to trigger this:
|
||||||
|
//press the 'cancel' button
|
||||||
|
//close the dialog by pressing the cross
|
||||||
|
std::cout << "CANCEL!! yet to be implemented... ;)" << std::endl ;
|
||||||
|
}
|
||||||
|
|
||||||
|
Gtk::Dialog::on_response( response_id ) ;
|
||||||
|
}
|
||||||
|
|
||||||
Dialog_Progress::~Dialog_Progress()
|
Dialog_Progress::~Dialog_Progress()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "../include/Win_GParted.h"
|
#include "../include/Win_GParted.h"
|
||||||
|
#include "../include/Dialog_Progress.h"
|
||||||
|
|
||||||
#include <gtkmm/aboutdialog.h>
|
#include <gtkmm/aboutdialog.h>
|
||||||
#include <gtkmm/messagedialog.h>
|
#include <gtkmm/messagedialog.h>
|
||||||
|
@ -741,6 +742,7 @@ void Win_GParted::combo_devices_changed( )
|
||||||
{
|
{
|
||||||
//set new current device
|
//set new current device
|
||||||
current_device = combo_devices .get_active_row_number() ;
|
current_device = combo_devices .get_active_row_number() ;
|
||||||
|
this ->set_title( String::ucompose( _("%1 - GParted"), devices[ current_device ] .path ) );
|
||||||
|
|
||||||
//refresh label_device_info
|
//refresh label_device_info
|
||||||
Fill_Label_Device_Info( );
|
Fill_Label_Device_Info( );
|
||||||
|
@ -803,6 +805,7 @@ void Win_GParted::menu_gparted_refresh_devices( )
|
||||||
//if no devices were detected we disable some stuff and show a message in the statusbar
|
//if no devices were detected we disable some stuff and show a message in the statusbar
|
||||||
if ( devices .empty() )
|
if ( devices .empty() )
|
||||||
{
|
{
|
||||||
|
this ->set_title( _("GParted") );
|
||||||
combo_devices .hide() ;
|
combo_devices .hide() ;
|
||||||
|
|
||||||
menubar_main .items()[ 1 ] .set_sensitive( false ) ;
|
menubar_main .items()[ 1 ] .set_sensitive( false ) ;
|
||||||
|
|
12
src/ext2.cc
12
src/ext2.cc
|
@ -23,19 +23,19 @@ namespace GParted
|
||||||
FS ext2::get_filesystem_support( )
|
FS ext2::get_filesystem_support( )
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_EXT2 ;
|
fs .filesystem = GParted::FS_EXT2 ;
|
||||||
if ( ! system( "which dumpe2fs 1>/dev/null 2>/dev/null" ) )
|
|
||||||
|
if ( ! Glib::find_program_in_path( "dumpe2fs" ) .empty() )
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which mkfs.ext2 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkfs.ext2" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which e2fsck 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "e2fsck" ) .empty() )
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
//resizing is a delicate process ...
|
//resizing is a delicate process ...
|
||||||
if ( ! system( "which resize2fs 1>/dev/null 2>/dev/null" ) && fs .check )
|
if ( ! Glib::find_program_in_path( "resize2fs" ) .empty() && fs .check )
|
||||||
{
|
{
|
||||||
fs .grow = GParted::FS::EXTERNAL ;
|
fs .grow = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ FS ext2::get_filesystem_support( )
|
||||||
fs .shrink = GParted::FS::EXTERNAL ;
|
fs .shrink = GParted::FS::EXTERNAL ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) && fs .grow )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() && fs .grow )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
return fs ;
|
return fs ;
|
||||||
|
|
12
src/ext3.cc
12
src/ext3.cc
|
@ -24,19 +24,19 @@ namespace GParted
|
||||||
FS ext3::get_filesystem_support( )
|
FS ext3::get_filesystem_support( )
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_EXT3 ;
|
fs .filesystem = GParted::FS_EXT3 ;
|
||||||
if ( ! system( "which dumpe2fs 1>/dev/null 2>/dev/null" ) )
|
|
||||||
|
if ( ! Glib::find_program_in_path( "dumpe2fs" ) .empty() )
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which mkfs.ext3 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkfs.ext3" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which e2fsck 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "e2fsck" ) .empty() )
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
//resizing is a delicate process ...
|
//resizing is a delicate process ...
|
||||||
if ( ! system( "which resize2fs 1>/dev/null 2>/dev/null" ) && fs .check )
|
if ( ! Glib::find_program_in_path( "resize2fs" ) .empty() && fs .check )
|
||||||
{
|
{
|
||||||
fs .grow = GParted::FS::EXTERNAL ;
|
fs .grow = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ FS ext3::get_filesystem_support( )
|
||||||
fs .shrink = GParted::FS::EXTERNAL ;
|
fs .shrink = GParted::FS::EXTERNAL ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) && fs .grow )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() && fs .grow )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
return fs ;
|
return fs ;
|
||||||
|
|
|
@ -24,14 +24,13 @@ namespace GParted
|
||||||
FS fat16::get_filesystem_support( )
|
FS fat16::get_filesystem_support( )
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_FAT16 ;
|
fs .filesystem = GParted::FS_FAT16 ;
|
||||||
|
|
||||||
//find out if we can create fat16 filesystems
|
//find out if we can create fat16 filesystems
|
||||||
if ( ! system( "which mkdosfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkdosfs" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which dosfsck 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "dosfsck" ) .empty() )
|
||||||
{
|
{
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
@ -42,7 +41,7 @@ FS fat16::get_filesystem_support( )
|
||||||
fs .shrink = GParted::FS::LIBPARTED ;
|
fs .shrink = GParted::FS::LIBPARTED ;
|
||||||
fs .move = GParted::FS::LIBPARTED ;
|
fs .move = GParted::FS::LIBPARTED ;
|
||||||
|
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
fs .MIN = 16 ;
|
fs .MIN = 16 ;
|
||||||
|
|
|
@ -24,14 +24,13 @@ namespace GParted
|
||||||
FS fat32::get_filesystem_support( )
|
FS fat32::get_filesystem_support( )
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_FAT32 ;
|
fs .filesystem = GParted::FS_FAT32 ;
|
||||||
|
|
||||||
//find out if we can create fat32 filesystems
|
//find out if we can create fat32 filesystems
|
||||||
if ( ! system( "which mkdosfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkdosfs" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which dosfsck 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "dosfsck" ) .empty() )
|
||||||
{
|
{
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
@ -42,7 +41,7 @@ FS fat32::get_filesystem_support( )
|
||||||
fs .shrink = GParted::FS::LIBPARTED ;
|
fs .shrink = GParted::FS::LIBPARTED ;
|
||||||
fs .move = GParted::FS::LIBPARTED ;
|
fs .move = GParted::FS::LIBPARTED ;
|
||||||
|
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
fs .MIN = 32 ; //smaller fs'es will cause windows scandisk to fail..
|
fs .MIN = 32 ; //smaller fs'es will cause windows scandisk to fail..
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
namespace GParted
|
namespace GParted
|
||||||
{
|
{
|
||||||
|
|
||||||
FS hfs::get_filesystem_support( )
|
FS hfs::get_filesystem_support()
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
|
@ -29,10 +29,10 @@ FS hfs::get_filesystem_support( )
|
||||||
|
|
||||||
fs .read = GParted::FS::LIBPARTED; //provided by libparted
|
fs .read = GParted::FS::LIBPARTED; //provided by libparted
|
||||||
|
|
||||||
if ( ! system( "which hformat 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "hformat" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
fs .MAX = 2048 ;
|
fs .MAX = 2048 ;
|
||||||
|
|
16
src/jfs.cc
16
src/jfs.cc
|
@ -23,24 +23,22 @@
|
||||||
namespace GParted
|
namespace GParted
|
||||||
{
|
{
|
||||||
|
|
||||||
FS jfs::get_filesystem_support( )
|
FS jfs::get_filesystem_support()
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_JFS ;
|
fs .filesystem = GParted::FS_JFS ;
|
||||||
|
|
||||||
if ( ! system( "which jfs_debugfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "jfs_debugfs" ) .empty() )
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which mkfs.jfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkfs.jfs" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which jfs_fsck 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "jfs_fsck" ) .empty() )
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
//resizing of jfs requires jfs support in the kernel
|
//resizing of jfs requires jfs support in the kernel
|
||||||
std::ifstream input( "/proc/filesystems" ) ;
|
std::ifstream input( "/proc/filesystems" ) ;
|
||||||
|
|
||||||
if ( input )
|
if ( input )
|
||||||
{
|
{
|
||||||
Glib::ustring line ;
|
Glib::ustring line ;
|
||||||
|
@ -52,10 +50,10 @@ FS jfs::get_filesystem_support( )
|
||||||
break ;
|
break ;
|
||||||
}
|
}
|
||||||
|
|
||||||
input .close( ) ;
|
input .close() ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) && fs .grow )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() && fs .grow )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
fs .MIN = 16 ;
|
fs .MIN = 16 ;
|
||||||
|
@ -120,7 +118,7 @@ bool jfs::Resize( const Partition & partition_new,
|
||||||
|
|
||||||
bool return_value = false ;
|
bool return_value = false ;
|
||||||
Glib::ustring error ;
|
Glib::ustring error ;
|
||||||
Glib::ustring TEMP_MP = "/tmp/gparted_tmp_jfs_mountpoint" ;
|
Glib::ustring TEMP_MP = Glib::get_tmp_dir() + "/gparted_tmp_jfs_mountpoint" ;
|
||||||
|
|
||||||
//create mountpoint...
|
//create mountpoint...
|
||||||
operation_details .back() .sub_details .push_back(
|
operation_details .back() .sub_details .push_back(
|
||||||
|
|
|
@ -21,13 +21,12 @@
|
||||||
namespace GParted
|
namespace GParted
|
||||||
{
|
{
|
||||||
|
|
||||||
FS linux_swap::get_filesystem_support( )
|
FS linux_swap::get_filesystem_support()
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_LINUX_SWAP ;
|
fs .filesystem = GParted::FS_LINUX_SWAP ;
|
||||||
|
|
||||||
if ( ! system( "which mkswap 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkswap" ) .empty() )
|
||||||
{
|
{
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
fs .grow = GParted::FS::EXTERNAL ;
|
fs .grow = GParted::FS::EXTERNAL ;
|
||||||
|
@ -35,7 +34,7 @@ FS linux_swap::get_filesystem_support( )
|
||||||
fs .move = GParted::FS::EXTERNAL ;
|
fs .move = GParted::FS::EXTERNAL ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
return fs ;
|
return fs ;
|
||||||
|
|
12
src/ntfs.cc
12
src/ntfs.cc
|
@ -24,19 +24,19 @@ namespace GParted
|
||||||
FS ntfs::get_filesystem_support( )
|
FS ntfs::get_filesystem_support( )
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_NTFS ;
|
fs .filesystem = GParted::FS_NTFS ;
|
||||||
if ( ! system( "which ntfscluster 1>/dev/null 2>/dev/null" ) )
|
|
||||||
|
if ( ! Glib::find_program_in_path( "ntfscluster" ) .empty() )
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which mkntfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkntfs" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which ntfsfix 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "ntfsfix" ) .empty() )
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
//resizing is a delicate process ...
|
//resizing is a delicate process ...
|
||||||
if ( ! system( "which ntfsresize 1>/dev/null 2>/dev/null" ) && fs .check )
|
if ( ! Glib::find_program_in_path( "ntfsresize" ) .empty() && fs .check )
|
||||||
{
|
{
|
||||||
fs .grow = GParted::FS::EXTERNAL ;
|
fs .grow = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ FS ntfs::get_filesystem_support( )
|
||||||
}
|
}
|
||||||
|
|
||||||
//we need ntfsresize to set correct used/unused after cloning
|
//we need ntfsresize to set correct used/unused after cloning
|
||||||
if ( ! system( "which ntfsclone 1>/dev/null 2>/dev/null" ) && fs .grow )
|
if ( ! Glib::find_program_in_path( "ntfsclone" ) .empty() && fs .grow )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
return fs ;
|
return fs ;
|
||||||
|
|
|
@ -21,25 +21,24 @@
|
||||||
namespace GParted
|
namespace GParted
|
||||||
{
|
{
|
||||||
|
|
||||||
FS reiser4::get_filesystem_support( )
|
FS reiser4::get_filesystem_support()
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_REISER4 ;
|
fs .filesystem = GParted::FS_REISER4 ;
|
||||||
|
|
||||||
if ( ! system( "which debugfs.reiser4 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "debugfs.reiser4" ) .empty() )
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which mkfs.reiser4 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkfs.reiser4" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which fsck.reiser4 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "fsck.reiser4" ) .empty() )
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* IT SEEMS RESIZE AND COPY AREN'T IMPLEMENTED YET IN THE TOOLS...
|
* IT SEEMS RESIZE AND COPY AREN'T IMPLEMENTED YET IN THE TOOLS...
|
||||||
* SEE http://marc.theaimsgroup.com/?t=109883161600003&r=1&w=2 for more information.. (it seems NameSys is getting commercial? :| )
|
* SEE http://marc.theaimsgroup.com/?t=109883161600003&r=1&w=2 for more information..
|
||||||
*/
|
*/
|
||||||
|
|
||||||
return fs ;
|
return fs ;
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,23 +21,22 @@
|
||||||
namespace GParted
|
namespace GParted
|
||||||
{
|
{
|
||||||
|
|
||||||
FS reiserfs::get_filesystem_support( )
|
FS reiserfs::get_filesystem_support()
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_REISERFS ;
|
fs .filesystem = GParted::FS_REISERFS ;
|
||||||
|
|
||||||
if ( ! system( "which debugreiserfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "debugreiserfs" ) .empty() )
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which mkreiserfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkreiserfs" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which reiserfsck 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "reiserfsck" ) .empty() )
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
//resizing is a delicate process ...
|
//resizing is a delicate process ...
|
||||||
if ( ! system( "which resize_reiserfs 1>/dev/null 2>/dev/null" ) && fs .check )
|
if ( ! Glib::find_program_in_path( "resize_reiserfs" ) .empty() && fs .check )
|
||||||
{
|
{
|
||||||
fs .grow = GParted::FS::EXTERNAL ;
|
fs .grow = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
|
@ -46,7 +45,7 @@ FS reiserfs::get_filesystem_support( )
|
||||||
}
|
}
|
||||||
|
|
||||||
//we need to call resize_reiserfs after a copy to get proper used/unused
|
//we need to call resize_reiserfs after a copy to get proper used/unused
|
||||||
if ( ! system( "which dd 1>/dev/null 2>/dev/null" ) && fs .grow )
|
if ( ! Glib::find_program_in_path( "dd" ) .empty() && fs .grow )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
fs .MIN = 32 ;
|
fs .MIN = 32 ;
|
||||||
|
|
19
src/xfs.cc
19
src/xfs.cc
|
@ -26,20 +26,19 @@ namespace GParted
|
||||||
FS xfs::get_filesystem_support( )
|
FS xfs::get_filesystem_support( )
|
||||||
{
|
{
|
||||||
FS fs ;
|
FS fs ;
|
||||||
|
|
||||||
fs .filesystem = GParted::FS_XFS ;
|
fs .filesystem = GParted::FS_XFS ;
|
||||||
|
|
||||||
if ( ! system( "which xfs_db 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "xfs_db" ) .empty() )
|
||||||
fs .read = GParted::FS::EXTERNAL ;
|
fs .read = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which mkfs.xfs 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "mkfs.xfs" ) .empty() )
|
||||||
fs .create = GParted::FS::EXTERNAL ;
|
fs .create = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
if ( ! system( "which xfs_repair 1>/dev/null 2>/dev/null" ) )
|
if ( ! Glib::find_program_in_path( "xfs_repair" ) .empty() )
|
||||||
fs .check = GParted::FS::EXTERNAL ;
|
fs .check = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
//resizing of xfs requires xfs_growfs, xfs_repair and xfs support in the kernel
|
//resizing of xfs requires xfs_growfs, xfs_repair and xfs support in the kernel
|
||||||
if ( ! system( "which xfs_growfs 1>/dev/null 2>/dev/null" ) && fs .check )
|
if ( ! Glib::find_program_in_path( "xfs_growfs" ) .empty() && fs .check )
|
||||||
{
|
{
|
||||||
Glib::ustring line ;
|
Glib::ustring line ;
|
||||||
std::ifstream input( "/proc/filesystems" ) ;
|
std::ifstream input( "/proc/filesystems" ) ;
|
||||||
|
@ -53,7 +52,9 @@ FS xfs::get_filesystem_support( )
|
||||||
input .close( ) ;
|
input .close( ) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! system( "which xfsdump xfsrestore 1>/dev/null 2>/dev/null" ) && fs .check && fs .create )
|
if ( ! Glib::find_program_in_path( "xfsdump" ) .empty() &&
|
||||||
|
! Glib::find_program_in_path( "xfsrestore" ) .empty() &&
|
||||||
|
fs .check && fs .create )
|
||||||
fs .copy = GParted::FS::EXTERNAL ;
|
fs .copy = GParted::FS::EXTERNAL ;
|
||||||
|
|
||||||
fs .MIN = 32 ;//official minsize = 16MB, but the smallest xfs_repair can handle is 32MB...
|
fs .MIN = 32 ;//official minsize = 16MB, but the smallest xfs_repair can handle is 32MB...
|
||||||
|
@ -119,7 +120,7 @@ bool xfs::Resize( const Partition & partition_new,
|
||||||
|
|
||||||
bool return_value = false ;
|
bool return_value = false ;
|
||||||
Glib::ustring error ;
|
Glib::ustring error ;
|
||||||
Glib::ustring TEMP_MP = "/tmp/gparted_tmp_xfs_mountpoint" ;
|
Glib::ustring TEMP_MP = Glib::get_tmp_dir() + "/gparted_tmp_xfs_mountpoint" ;
|
||||||
|
|
||||||
//create mountpoint...
|
//create mountpoint...
|
||||||
operation_details .back() .sub_details .push_back(
|
operation_details .back() .sub_details .push_back(
|
||||||
|
@ -209,8 +210,8 @@ bool xfs::Copy( const Glib::ustring & src_part_path,
|
||||||
|
|
||||||
bool return_value = false ;
|
bool return_value = false ;
|
||||||
Glib::ustring error ;
|
Glib::ustring error ;
|
||||||
Glib::ustring SRC = "/tmp/gparted_tmp_xfs_src_mountpoint" ;
|
Glib::ustring SRC = Glib::get_tmp_dir() + "/gparted_tmp_xfs_src_mountpoint" ;
|
||||||
Glib::ustring DST = "/tmp/gparted_tmp_xfs_dest_mountpoint" ;
|
Glib::ustring DST = Glib::get_tmp_dir() + "/gparted_tmp_xfs_dest_mountpoint" ;
|
||||||
|
|
||||||
//create xfs filesystem on destination..
|
//create xfs filesystem on destination..
|
||||||
Partition partition ;
|
Partition partition ;
|
||||||
|
|
Loading…
Reference in New Issue