Next Generation PCManFM 0.9 Alpha is released!

The dedicated forum for PCMan File Manager - http://wiki.lxde.org/en/PCManFM
PCMan
Posts: 85
Joined: Mon Oct 06, 2008 9:52 am

Next Generation PCManFM 0.9 Alpha is released!

Post by PCMan »

After endless waiting, here comes the first public tarball release of next generation PCManFM.
But don't expect too much. This is an Alpha release. :-)
Everybody loves screenshots. This is PCManFM 0.9.0 alpha running under LXDE with its desktop manager turned on.

Image

There will be 1.0, but before it become stable enough for production use, let's call it 0.9.

Actually, 0.9.0 is not a new version of PCManFM. It is a whole new total rewrite and redesign from scratch. So its code base is totally different from the old PCManFM 0.5.x series.

Major improvements:

Have GIO/GVFS support but "still keep original speed" and memory usage is still acceptable
Seamless remote filesystem access such as sftp and smb (provided by gvfs)
  • Trash can (provided by gvfs)
Much better designed configuration dialogs
Much better thumbnail support
Better wallpaper handling
Better drag and drop handling and also support X direct save
Basic auto-mount (provided by gvfs)
Better application chooser based on applications menu installed on the dsektop system
The core part is moved to a separate lib called libfm, which can be used by other programs
Much better structure of source code, so future hacking is easier
Better configurability
and more...
Please give it heavy tests. This will be the default file manager in next generation LXDE.
So quality and usability are extremely important.

Grab tha tarballs now!

http://sourceforge.net/projects/pcmanfm/

Cheers!
alejol
Posts: 1
Joined: Mon Feb 22, 2010 3:44 pm

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by alejol »

Please, please:
Can you make an OLPC XO-1 version of PCManFM??? If you can, make a sugarizaed
activity ( a .xo file), for easy installation. I do not have knowledge for compiling
source code.
File management is horrible in Sugar; we need PCManFM in our XOs!!
I, and many, many people, we are very grateful to you!!
Thanks in advance!

Alejandro Lavarello , country Uruguay.
Replies to alejandro.lavarello (at) gmail.com
karabaja4
Posts: 11
Joined: Wed Dec 31, 2008 12:23 am

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by karabaja4 »

Hello,

I have a problem compiling pcmanfm 0.9 alpha. I am using the tarball from the provided link above. Here's the output:

Code: Select all

[deadbeef pcmanfm-0.9]$ make
make  all-recursive
make[1]: Entering directory `/home/igor/Downloads/pcmanfm-0.9'
Making all in src
make[2]: Entering directory `/home/igor/Downloads/pcmanfm-0.9/src'
gcc -DHAVE_CONFIG_H -I. -I..  -DPACKAGE_DATA_DIR=\""/usr/local/share/pcmanfm2"\" 
-DPACKAGE_UI_DIR=\""/usr/local/share/pcmanfm2/ui"\" 
-DPACKAGE_LOCALE_DIR=\""/usr/local/share/locale"\" -D_LARGEFILE_SOURCE -D_REENTRANT 
-D_FILE_OFFSET_BITS=64 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include 
-I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 
-I/usr/include/freetype2 -I/usr/include/libpng14   -pthread -I/usr/include/glib-2.0 
-I/usr/lib/glib-2.0/include -I/usr/include/gio-unix-2.0/   -I/usr/include/glib-2.0 
-I/usr/lib/glib-2.0/include   -pthread -I/usr/include/libfm -I/usr/include/gtk-2.0 
-I/usr/include/gio-unix-2.0/ -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 
-I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 
-I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 
-I/usr/include/libpng14   -I/usr/include/menu-cache -I/usr/include/glib-2.0 
-I/usr/lib/glib-2.0/include   -DG_DISABLE_CAST_CHECKS -Wall 
-Werror-implicit-function-declaration  -g -O2 -MT pcmanfm2-pcmanfm.o -MD -MP -MF 
.deps/pcmanfm2-pcmanfm.Tpo -c -o pcmanfm2-pcmanfm.o `test -f 'pcmanfm.c' || echo 
'./'`pcmanfm.c
In file included from /usr/include/libfm/fm-gtk.h:30,
                 from pcmanfm.c:39:
/usr/include/libfm/fm-file-menu.h:30: warning: type defaults to ‘int’ in declaration 
of ‘FmFileMenuFolderHook’
pcmanfm.c: In function ‘main’:
pcmanfm.c:116: warning: passing argument 2 of ‘signal’ from incompatible pointer type
/usr/include/signal.h:101: note: expected ‘__sighandler_t’ but argument is of type 
‘void (*)(void)’
pcmanfm.c:117: warning: passing argument 2 of ‘signal’ from incompatible pointer type
/usr/include/signal.h:101: note: expected ‘__sighandler_t’ but argument is of type 
‘void (*)(void)’
pcmanfm.c:123: warning: passing argument 1 of ‘fm_app_config_load_from_file’ from 
incompatible pointer type
app-config.h:95: note: expected ‘struct FmAppConfig *’ but argument is of type ‘struct 
FmConfig *’
pcmanfm.c: In function ‘args_to_ipc_buf’:
pcmanfm.c:171: error: implicit declaration of function ‘fm_canonicalize_filename’
pcmanfm.c:171: warning: initialization makes pointer from integer without a cast
pcmanfm.c:192: warning: unused variable ‘fn’
pcmanfm.c:155: warning: enumeration value ‘G_OPTION_ARG_CALLBACK’ not handled in 
switch
pcmanfm.c:155: warning: enumeration value ‘G_OPTION_ARG_DOUBLE’ not handled in switch
pcmanfm.c:155: warning: enumeration value ‘G_OPTION_ARG_INT64’ not handled in switch
pcmanfm.c: In function ‘ipc_buf_to_args’:
pcmanfm.c:209: warning: passing argument 2 of ‘g_hash_table_insert’ discards 
qualifiers from pointer target type
/usr/include/glib-2.0/glib/ghash.h:67: note: expected ‘gpointer’ but argument is of 
type ‘const gchar *’
pcmanfm.c:243: warning: assignment from incompatible pointer type
pcmanfm.c:222: warning: enumeration value ‘G_OPTION_ARG_CALLBACK’ not handled in 
switch
pcmanfm.c:222: warning: enumeration value ‘G_OPTION_ARG_DOUBLE’ not handled in switch
pcmanfm.c:222: warning: enumeration value ‘G_OPTION_ARG_INT64’ not handled in switch
pcmanfm.c: In function ‘on_socket_event’:
pcmanfm.c:267: warning: unused variable ‘file’
pcmanfm.c: In function ‘pcmanfm_run’:
pcmanfm.c:422: warning: passing argument 1 of ‘fm_config_emit_changed’ from 
incompatible pointer type
/usr/include/libfm/fm-config.h:88: note: expected ‘struct FmConfig *’ but argument is 
of type ‘struct FmAppConfig *’
pcmanfm.c:463: warning: passing argument 1 of ‘fm_file_info_job_add’ from incompatible 
pointer type
/usr/include/libfm/fm-file-info-job.h:59: note: expected ‘struct FmFileInfoJob *’ but 
argument is of type ‘struct FmJob *’
pcmanfm.c:468: error: implicit declaration of function ‘fm_job_run_sync_with_mainloop’
pcmanfm.c:470: error: implicit declaration of function ‘fm_launch_files_simple’
pcmanfm.c:373: warning: unused variable ‘w’
pcmanfm.c:372: warning: unused variable ‘file’
pcmanfm.c: In function ‘pcmanfm_open_folder’:
pcmanfm.c:507: warning: unused variable ‘win’
make[2]: *** [pcmanfm2-pcmanfm.o] Error 1
make[2]: Leaving directory `/home/igor/Downloads/pcmanfm-0.9/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/igor/Downloads/pcmanfm-0.9'
make: *** [all] Error 2
The distribution is Archlinux. I had to manually update menu-cache package to 0.3.2 because the one from Arch repo is out of date (0.3.1) and configure requires 0.3.2.

The system is up to date - GCC 4.4.3 on kernel 2.6.33.
kiefer
Posts: 2
Joined: Fri Mar 05, 2010 4:35 pm

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by kiefer »

Try with yaourt, I had the same problem and I solved that way.
yaourt -S pcmanfm-git
karabaja4
Posts: 11
Joined: Wed Dec 31, 2008 12:23 am

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by karabaja4 »

kiefer wrote:Try with yaourt, I had the same problem and I solved that way.
yaourt -S pcmanfm-git
Thanks, that made me figure out the problem: the libfm is a dependency so it must be installed before compiling pcmanfm... It compiles now.
boobaloo
Posts: 2
Joined: Mon Apr 05, 2010 3:55 pm

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by boobaloo »

Hello there.
I faced similar problem - my git copy of pcmanfm sources don't want to compile.
libfm is compiled and installed without any error (yes, i'm too compiled and installed libmenu-cache before it)

when I try to install i received following errors:

Code: Select all

boobaloo@boobaloo-laptop:~/develop/pcmanfm/pcmanfm$ sudo make
make  all-recursive
make[1]: Entering directory `/home/boobaloo/develop/pcmanfm/pcmanfm'
Making all in src
make[2]: Entering directory `/home/boobaloo/develop/pcmanfm/pcmanfm/src'
gcc -DHAVE_CONFIG_H -I. -I..  -DPACKAGE_DATA_DIR=\""/usr/local/share/pcmanfm2"\" -DPACKAGE_UI_DIR=\""/usr/local/share/pcmanfm2/ui"\" -DPACKAGE_LOCALE_DIR=\""/usr/local/share/locale"\" -D_LARGEFILE_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS  -D_REENTRANT -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gio-unix-2.0/   -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -pthread -D_REENTRANT -I/usr/local/include/libfm -I/usr/include/gtk-2.0 -I/usr/include/gio-unix-2.0/ -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -I/usr/local/include/menu-cache -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -DG_DISABLE_CAST_CHECKS -Wall -Werror-implicit-function-declaration  -g -O2 -MT pcmanfm2-desktop.o -MD -MP -MF .deps/pcmanfm2-desktop.Tpo -c -o pcmanfm2-desktop.o `test -f 'desktop.c' || echo './'`desktop.c
desktop.c: In function ‘fm_desktop_class_init’:
desktop.c:202: warning: assignment from incompatible pointer type
desktop.c:205: warning: passing argument 2 of ‘XInternAtoms’ from incompatible pointer type
desktop.c: In function ‘fm_desktop_destroy’:
desktop.c:248: warning: passing argument 1 of ‘((struct GObjectClass *)fm_desktop_parent_class)->dispose’ from incompatible pointer type
desktop.c: In function ‘fm_desktop_init’:
desktop.c:270: warning: assignment from incompatible pointer type
desktop.c:296: warning: passing argument 1 of ‘gtk_drag_source_set’ from incompatible pointer type
desktop.c:304: warning: passing argument 1 of ‘gtk_drag_dest_set’ from incompatible pointer type
desktop.c: In function ‘fm_desktop_manager_init’:
desktop.c:363: warning: passing argument 2 of ‘gtk_window_group_add_window’ from incompatible pointer type
desktop.c:378: warning: passing argument 5 of ‘gtk_action_group_add_radio_actions’ from incompatible pointer type
desktop.c:379: warning: passing argument 5 of ‘gtk_action_group_add_radio_actions’ from incompatible pointer type
desktop.c: In function ‘on_button_press’:
desktop.c:608: warning: passing argument 2 of ‘forward_event_to_rootwin’ from incompatible pointer type
desktop.c: In function ‘on_button_release’:
desktop.c:648: warning: passing argument 2 of ‘forward_event_to_rootwin’ from incompatible pointer type
desktop.c: In function ‘on_motion_notify’:
desktop.c:698: warning: passing argument 2 of ‘g_timeout_add’ from incompatible pointer type
desktop.c:733: warning: passing argument 5 of ‘gtk_drag_begin’ from incompatible pointer type
desktop.c: In function ‘on_key_press’:
desktop.c:847: warning: passing argument 1 of ‘fm_clipboard_cut_or_copy_files’ from incompatible pointer type
desktop.c:855: warning: passing argument 1 of ‘fm_clipboard_cut_or_copy_files’ from incompatible pointer type
desktop.c: In function ‘on_direction_changed’:
desktop.c:896: warning: unused variable ‘pc’
desktop.c: In function ‘get_nearest_item’:
desktop.c:1058: warning: enumeration value ‘GTK_DIR_TAB_FORWARD’ not handled in switch
desktop.c:1058: warning: enumeration value ‘GTK_DIR_TAB_BACKWARD’ not handled in switch
desktop.c: At top level:
desktop.c:77: warning: ‘desktop_item_new’ declared inline after being called
desktop.c:77: warning: previous declaration of ‘desktop_item_new’ was here
desktop.c: In function ‘paint_item’:
desktop.c:1400: error: implicit declaration of function ‘gtk_widget_get_state’
desktop.c: In function ‘update_background’:
desktop.c:1579: warning: enumeration value ‘FM_WP_COLOR’ not handled in switch
desktop.c: In function ‘on_desktop_font_changed’:
desktop.c:1777: warning: initialisation from incompatible pointer type
desktop.c: In function ‘reload_icons’:
desktop.c:1796: warning: initialisation from incompatible pointer type
desktop.c: In function ‘on_select_all’:
desktop.c:1834: warning: initialisation from incompatible pointer type
desktop.c: In function ‘on_invert_select’:
desktop.c:1844: warning: initialisation from incompatible pointer type
make[2]: *** [pcmanfm2-desktop.o] Error 1
make[2]: Leaving directory `/home/boobaloo/develop/pcmanfm/pcmanfm/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/boobaloo/develop/pcmanfm/pcmanfm'
make: *** [all] Error 2
I've install with 'sudo make' because if I try with 'make' it throw an error about permission denied at some step:

Code: Select all

desktop.c: At top level:
desktop.c:2057: fatal error: opening dependency file .deps/pcmanfm2-desktop.Tpo: Permission denied
compilation terminated.
I'm using #! Linux (Crunchbang 9.04).
P.S. Also I'm active translator of PcmanFM, so please help me achieve better quality of translations. Working 'offline' is not best behaviour :P
john100
Posts: 2
Joined: Wed Apr 07, 2010 7:11 am

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by john100 »

1. Uncompress the file
2. Place the folders in "icons" into ~/.icons
3. Place the folder in "themes" into ~/.themes
4. Place the images from "images" into a safe location, e.g. ~/Pictures
5. Use LXAppearance to set the GTK theme to LXDE and the icon theme to Humanity-LXDE
6. Use Obconf to set the Openbox theme to LXDE
7. Right click on your current menu icon and set the icon to the menuicon.png that you saved in step 4
8. Modify your panel properties to set the background to panelbg.png that you saved in step 4
9. Reboot or relogin to fully appreciate the changes (Is this a bug?)
get pass 642-642 and 642-654 and more about 642-655 and 642-661
boobaloo
Posts: 2
Joined: Mon Apr 05, 2010 3:55 pm

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by boobaloo »

John100, sorry, but I don't understand you.

My problem - pcmanfm don't compile at all. btw - I don't use LXDE, but only part of it - exactly pcmanfm. Therefore I don't have any LXDE themes, LXAppearance, whatever else. And I don't really understand how themes & icons could help to build programm..

Regards
Korrode
Posts: 7
Joined: Fri Oct 30, 2009 6:25 am

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by Korrode »

Will it be possible to set per-filesystem default mount options for volumes that don't have fstab entries in the new PCManFM?

i.e. When I mount NTFS volumes (say, a USB drive, so no fstab entry) I want to use particular dmask, fmask and gid options; will I (either through PCManFM or GVFS options(?)) be able to set it so that NTFS volumes are always mounted with these options when I mount them via clicking the volume in the left pane of PCManFM?
PCMan
Posts: 85
Joined: Mon Oct 06, 2008 9:52 am

Re: Next Generation PCManFM 0.9 Alpha is released!

Post by PCMan »

Korrode wrote:Will it be possible to set per-filesystem default mount options for volumes that don't have fstab entries in the new PCManFM?

i.e. When I mount NTFS volumes (say, a USB drive, so no fstab entry) I want to use particular dmask, fmask and gid options; will I (either through PCManFM or GVFS options(?)) be able to set it so that NTFS volumes are always mounted with these options when I mount them via clicking the volume in the left pane of PCManFM?
This is a must-have, but it's not supported by gvfs. Gvfs hard-coded this part and doesn't allow customization.
Please bug report to gvfs developers in gnome bugzilla. This is a known bug for more than one year, but there is no progress since it's reported in gnome bugzilla.
Due to the limitations and design flaws of gvfs, we only use it temporarily. Later we'll have our own volume management facilities.
Locked