fm3 preliminary package for testing.

Forums for the Fluxbox Edition
Forum rules
Before you post please read this

fm3 preliminary package for testing.

Postby Kendall on Sun Jul 03, 2011 12:50 pm

Here is the current state of the new Fluxbox menu generator. It needs some polishing as there are still some bugs, but she's getting there. Please keep all discussion of this package in this thread so that it stays reasonably well organized.

Add "fm3-notify &" to the ~/.fluxbox/startup script and then install something. If you have mint-fm2 installed, please remove any references to it from the startup script as well (the logout daemon should be fine to stay where it is).

.deb package
source archive
User avatar
Kendall
Level 7
Level 7
 
Posts: 1580
Joined: Mon Nov 16, 2009 12:20 pm
Location: Asheville, NC, USA

Linux Mint is funded by ads and donations.
 

Re: fm3 preliminary package for testing.

Postby Alaric on Sun Jul 03, 2011 9:28 pm

Hi Kendall,

Very much looking forward to the next version of Mint Fluxbox, it's been a pleasure using it these past 6 months.

I commented out the mint-fm2 lines in ~/.fluxbox/startup and put in fm3-notify. I then installed the fm3 .deb and installed bluefish.
The bluefish entry showed up, as expected, in the Programming part of the menu, but I lost the Web browser entry, among others, as well as all the icons.

I just did mint-fm2 generate and it updated all the menu entries and brought back the icons, as usual.

I'm just wondering if there is a generate command for fm3-notify? I tried, but no go.

Again, really glad things are picking up for LM Fluxbox and Happy 4th of July.
P.S. Careful w/ those fireworks--we need your fingers fully functional for coding ;-)
LM 9 Isadora Fluxbox
Registered Linux User #533152
Alaric
Level 1
Level 1
 
Posts: 17
Joined: Sun Jan 02, 2011 5:13 pm
Location: Cleveland Ohio

Re: fm3 preliminary package for testing.

Postby Blazing Teens on Sun Jul 03, 2011 11:29 pm

Hi Kendall,When will you release next Linux mint Fluxbox?
Blazing Teens
Level 1
Level 1
 
Posts: 28
Joined: Sat May 14, 2011 10:53 pm

Re: fm3 preliminary package for testing.

Postby leodelacruz on Mon Jul 04, 2011 6:11 am

Was looking at the files in the directory ~ /.fm3
I saw that in the ~ /.fluxbox is a file called menu.backup I did not do did running.
I wonder what changes I should note in addition to the menu without icons, I have the theme but not the settings. I did a backup just before install the package deb

Sorry for my english and thanks for your time :)

Spanish:

Estube mirando los archivos en el directorio ~/.fm3
Vi que en el directorio ~/.fluxbox hay un archivo llamado menu.backup, realmente no lo probe.
Me gustaria saber que cambios debo notar ademas de el menu sin iconos, me conservo el tema pero no las configuraciones. igualmente hize un backup antes
Image
User avatar
leodelacruz
Level 1
Level 1
 
Posts: 40
Joined: Mon Oct 18, 2010 10:21 am
Location: Montevideo, Uruguay

Re: fm3 preliminary package for testing.

Postby Kendall on Mon Jul 04, 2011 1:15 pm

Alaric wrote:Hi Kendall,

Very much looking forward to the next version of Mint Fluxbox, it's been a pleasure using it these past 6 months.

I commented out the mint-fm2 lines in ~/.fluxbox/startup and put in fm3-notify. I then installed the fm3 .deb and installed bluefish.
The bluefish entry showed up, as expected, in the Programming part of the menu, but I lost the Web browser entry, among others, as well as all the icons.

I just did mint-fm2 generate and it updated all the menu entries and brought back the icons, as usual.

I'm just wondering if there is a generate command for fm3-notify? I tried, but no go.

Again, really glad things are picking up for LM Fluxbox and Happy 4th of July.
P.S. Careful w/ those fireworks--we need your fingers fully functional for coding ;-)

fm3 does not append anything to your existing menu. Essentially every time it senses a change it wipes the whole things and rebuilds it. I have an idea on how to correct one of the parsing errors and will work on implementing it sometime later today. It checks for the common system path "/usr/bin/x-www-browser" when trying to locate the web browser. If it doesn't see this then it skips the entry in the base menu.

Blazing Teens wrote:Hi Kendall,When will you release next Linux mint Fluxbox?

When it's done, and not a moment sooner.

leodelacruz wrote:Was looking at the files in the directory ~ /.fm3
I saw that in the ~ /.fluxbox is a file called menu.backup I did not do did running.
I wonder what changes I should note in addition to the menu without icons, I have the theme but not the settings. I did a backup just before install the package deb

mint-fm2 was good about successfully backing up the menu. fm3 is actually pretty terrible about it. One thing I want to eventually work out is a menu system that's efficient and effective enough to where people no longer need to mess with menu backups. I would copy your current menu elsewhere or name it something other than menu or menu.backup. fm3 presently doesn't support icons because, well, it takes forever to parse for icons and the whole purpose of the rewrite was to make it fast. Outside of that, I'm hoping you guys can tell me what other changes you experience. That's why I released it for testing. :wink:
User avatar
Kendall
Level 7
Level 7
 
Posts: 1580
Joined: Mon Nov 16, 2009 12:20 pm
Location: Asheville, NC, USA

Re: fm3 preliminary package for testing.

Postby leodelacruz on Mon Jul 04, 2011 2:11 pm

using is all I can do. I wish I could do more
just do not see the use of icons as important and functional xD
Image
User avatar
leodelacruz
Level 1
Level 1
 
Posts: 40
Joined: Mon Oct 18, 2010 10:21 am
Location: Montevideo, Uruguay

Re: fm3 preliminary package for testing.

Postby Kendall on Mon Jul 04, 2011 3:42 pm

leodelacruz wrote:using is all I can do. I wish I could do more
just do not see the use of icons as important and functional xD

Using it is important as I need feedback to improve it. I'm right there with you regarding the icons.
User avatar
Kendall
Level 7
Level 7
 
Posts: 1580
Joined: Mon Nov 16, 2009 12:20 pm
Location: Asheville, NC, USA

Re: fm3 preliminary package for testing.

Postby Kendall on Tue Jul 05, 2011 6:13 pm

I've set up a repo for fm3 development that will get updates and bug fixes as I implement them. Add the following line to your sources.list, then run "apt update" and you should be good to go:
Code: Select all
deb http://packages.kendalltristan.com/ unstable main
User avatar
Kendall
Level 7
Level 7
 
Posts: 1580
Joined: Mon Nov 16, 2009 12:20 pm
Location: Asheville, NC, USA

Re: fm3 preliminary package for testing.

Postby leodelacruz on Tue Jul 05, 2011 9:41 pm

there is a problem if I add the repository, of back to fm2?
Image
User avatar
leodelacruz
Level 1
Level 1
 
Posts: 40
Joined: Mon Oct 18, 2010 10:21 am
Location: Montevideo, Uruguay

Re: fm3 preliminary package for testing.

Postby Kendall on Wed Jul 06, 2011 1:42 pm

DNS propagation may not be complete just yet. It often takes 24 to 48 hours for it to completely finish, after which there should be no issues using the repo. I know I can access it from home, but not from the coffee shop down the street that uses a different ISP than me.
User avatar
Kendall
Level 7
Level 7
 
Posts: 1580
Joined: Mon Nov 16, 2009 12:20 pm
Location: Asheville, NC, USA

Re: fm3 preliminary package for testing.

Postby ju1ius on Fri Jul 08, 2011 2:26 pm

Hi Kendall,

I just finished a rewrite of the mint fluxbox menu system, so I thought it would be nice to share it !
The code is here, and there is also a wiki.

Here is a brief description of the main improvements:

Performance:
  • The daemon has been ported to C so it runs with a very low memory footprint (approx 140kB on my machine).
  • The menu generation script has been ported to Python and use a SQLite database for the icon cache, so it is significantly faster.
  • The daemon also has an option to use dpkg-triggers, so one can completely avoid the overhead of running a daemon on Debian/Apt based systems

Usability:
  • Only generate a submenu, so the main menu file stays editable.
  • Configuration through simple ini files, respecting the configuration cascade.
  • XDG compliance

Code concision:
  • The use of the python-xdg library significantly reduces the amount of code.

I would be glad to hear your thoughts about it.
Cheers !


PS:
I'm also rewriting the logout app.
Works fine but still undocumented...
ju1ius
Level 1
Level 1
 
Posts: 35
Joined: Wed Jul 29, 2009 11:40 am
Location: Marseille, France

Re: fm3 preliminary package for testing.

Postby jeffreyC on Fri Jul 08, 2011 7:49 pm

@ju1ius I tried to download the new version but all I get is a strange XML page with access denied
Get Dropbox and an extra 250 mb http://db.tt/wAizqw0
jeffreyC
Level 4
Level 4
 
Posts: 318
Joined: Mon Jun 07, 2010 9:34 pm

Re: fm3 preliminary package for testing.

Postby Kendall on Fri Jul 08, 2011 9:35 pm

ju1ius wrote:I just finished a rewrite of the mint fluxbox menu system, so I thought it would be nice to share it !

Groovy! I look forward to giving it a whirl. A couple of questions though: If the top level menu stays editable, how do you compensate for translations if for instance a user switches the default language? Does the daemon use inotify by default or is it using a watch or cron job or something?

I'm very interested in tearing through it and looking at the use of SQLite for the icon cache. I was looking at using python-xdg for the icon specification if my own implementation (importing just os) ends up being too slow (writing for multi-level theme inheritance is a royal pain I might add).


ju1ius wrote:I'm also rewriting the logout app.
Works fine but still undocumented...

This I'm particularly interested in as I haven't begun to mess with updating/rewriting the logout function in mint-fm2. I did decide to split the menu and logout into separate packages, so if your works the way I need it to I may just not mess with it and use your implementation.
User avatar
Kendall
Level 7
Level 7
 
Posts: 1580
Joined: Mon Nov 16, 2009 12:20 pm
Location: Asheville, NC, USA

Re: fm3 preliminary package for testing.

Postby ju1ius on Sat Jul 09, 2011 12:46 am

jeffreyC wrote:@ju1ius I tried to download the new version but all I get is a strange XML page with access denied


The deb packages in the github download section are outdated.
You should clone the repo and install from source.
ju1ius
Level 1
Level 1
 
Posts: 35
Joined: Wed Jul 29, 2009 11:40 am
Location: Marseille, France

Re: fm3 preliminary package for testing.

Postby ju1ius on Sat Jul 09, 2011 11:15 am

Kendall wrote:If the top level menu stays editable, how do you compensate for translations if for instance a user switches the default language?

Well when I said that it generates a submenu, it was not right. It generates one submenu for each application category defined in the xdg menu file
Code: Select all
/etc/xdg/menus/fxm-applications.menu

So I think you are wondering about the top-level entries generated by mint-fm2 like "Home", "Web Browser", "Package manager", etc...

For this two roads could be taken:

-------------------- 1
Handle these in the xdg menu file.
Users could then customize them by
Code: Select all
cp /etc/xdg/menus/fxm-applications.menu ~/.config/menus/

then editing this file and regenerate their menu.
Code: Select all
fxm-daemon update


Pros:
  • No change in the code
  • Users don't have to deal with I18N or Icons
  • Users can still ADD entries to ~./fluxbox/menu
Cons
  • Users can not CHANGE entries directly in ~/.fluxbox/menu, so they are forced to learn the xdg menu syntax and loose the simplicity of the fluxbox menu file...

-------------------- 2
Write a "top-level" xdg menu file, and have this top-level menu written to ~/.fluxbox/menu on-demand only.
Pros:
  • Users can edit ~/.fluxbox/menu directly without loosing their changes
  • They can also edit the top-level xdg menu file if they want more magic (Icons, I18N)
Cons
  • No magic when users edit ~/.fluxbox/menu directly
  • A bit more work for us (but still no big deal)

I'll look into these solutions ASAP.

Kendall wrote:Does the daemon use inotify by default or is it using a watch or cron job or something?


The daemon uses libinotifytools to watch recursively into the specified directories, see https://github.com/ju1ius/fluxdgmenu/blob/master/usr/lib/fluxdgmenu/fxm-watch.c
ju1ius
Level 1
Level 1
 
Posts: 35
Joined: Wed Jul 29, 2009 11:40 am
Location: Marseille, France

Re: fm3 preliminary package for testing.

Postby ju1ius on Sat Jul 09, 2011 10:56 pm

Ok I implemented my solution #2 and it is available in HEAD !

So there is now a new command:
Code: Select all
fxm-daemon generate-rootmenu

It will generate a default rootmenu that can be customized either by:
  • editing ~/.fluxbox/menu (changes are lost on each call to the command)
  • editing the fxm-rootmenu.menu xdg menu file (changes are persistent, but need re-running the command to be taken into account).

Please check https://github.com/ju1ius/fluxdgmenu/wiki/Customizing-the-menu for more infos.
ju1ius
Level 1
Level 1
 
Posts: 35
Joined: Wed Jul 29, 2009 11:40 am
Location: Marseille, France

Re: fm3 preliminary package for testing.

Postby xazax on Sun Jul 10, 2011 12:55 pm

ju1ius's work looks very promising for me. I like the idea of a native daemon and the dpkg trigger mode.
xazax
Level 1
Level 1
 
Posts: 23
Joined: Thu Jan 21, 2010 1:44 pm

Re: fm3 preliminary package for testing.

Postby Kendall on Sun Jul 10, 2011 2:48 pm

xazax wrote:ju1ius's work looks very promising for me. I like the idea of a native daemon and the dpkg trigger mode.

The only downside to dpkg triggers is that it won't adjust the menu if you install/remove anything by other means. If you build an app from source, or make use of something like Mozilla Prism, then the menu doesn't auto-update. Also if you manually adjust a .desktop file then there will be no auto-update as well.
User avatar
Kendall
Level 7
Level 7
 
Posts: 1580
Joined: Mon Nov 16, 2009 12:20 pm
Location: Asheville, NC, USA

Re: fm3 preliminary package for testing.

Postby xazax on Mon Jul 11, 2011 10:11 am

This is a good reason why it should not be the default, but i still feel that, if a distro aims to be lightweight, every opportunity to remove a daemon is welcome. And if somebody experienced enough, can manually update the menu, or assign the menu update method to a key.
xazax
Level 1
Level 1
 
Posts: 23
Joined: Thu Jan 21, 2010 1:44 pm

Re: fm3 preliminary package for testing.

Postby ju1ius on Tue Jul 12, 2011 3:59 pm

Hello again,

Today I added the ability to monitor GTK bookmarks to fluxdgmenu.
So I think it is now pretty much feature complete, and I will concentrate on fixing bugs, if some of you are willing to report them :wink:

Kendall, regarding the logout app, I read in another post that you wanted to get rid of pygtk.
What is your approach then ?

I chose to go with pygtk, and to make every command customizable via a config file, although they can easily be set to use the Dbus/ConsoleKit/Upower infrastructure.

xazax wrote:This is a good reason why it should not be the default, but i still feel that, if a distro aims to be lightweight, every opportunity to remove a daemon is welcome. And if somebody experienced enough, can manually update the menu, or assign the menu update method to a key.

I definitely agree.
ju1ius
Level 1
Level 1
 
Posts: 35
Joined: Wed Jul 29, 2009 11:40 am
Location: Marseille, France

Linux Mint is funded by ads and donations.
 
Next

Return to Fluxbox

Who is online

Users browsing this forum: No registered users and 2 guests

cron