fm3 preliminary package for testing.

Questions about applications and software
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Kendall

fm3 preliminary package for testing.

Post by Kendall »

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
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 1 time in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
Alaric

Re: fm3 preliminary package for testing.

Post by Alaric »

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 ;-)
Blazing Teens

Re: fm3 preliminary package for testing.

Post by Blazing Teens »

Hi Kendall,When will you release next Linux mint Fluxbox?
leodelacruz
Level 1
Level 1
Posts: 39
Joined: Mon Oct 18, 2010 10:21 am
Location: Montevideo, Uruguay

Re: fm3 preliminary package for testing.

Post by leodelacruz »

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
Kendall

Re: fm3 preliminary package for testing.

Post by Kendall »

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:
leodelacruz
Level 1
Level 1
Posts: 39
Joined: Mon Oct 18, 2010 10:21 am
Location: Montevideo, Uruguay

Re: fm3 preliminary package for testing.

Post by leodelacruz »

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
Kendall

Re: fm3 preliminary package for testing.

Post by Kendall »

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.
Kendall

Re: fm3 preliminary package for testing.

Post by Kendall »

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
leodelacruz
Level 1
Level 1
Posts: 39
Joined: Mon Oct 18, 2010 10:21 am
Location: Montevideo, Uruguay

Re: fm3 preliminary package for testing.

Post by leodelacruz »

there is a problem if I add the repository, of back to fm2?
Image
Kendall

Re: fm3 preliminary package for testing.

Post by Kendall »

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.
ju1ius

Re: fm3 preliminary package for testing.

Post by ju1ius »

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...
jeffreyC

Re: fm3 preliminary package for testing.

Post by jeffreyC »

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

Re: fm3 preliminary package for testing.

Post by Kendall »

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.
ju1ius

Re: fm3 preliminary package for testing.

Post by ju1ius »

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

Re: fm3 preliminary package for testing.

Post by ju1ius »

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/bl ... xm-watch.c
ju1ius

Re: fm3 preliminary package for testing.

Post by ju1ius »

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/wi ... g-the-menu for more infos.
xazax
Level 1
Level 1
Posts: 23
Joined: Thu Jan 21, 2010 1:44 pm

Re: fm3 preliminary package for testing.

Post by xazax »

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

Re: fm3 preliminary package for testing.

Post by Kendall »

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.
xazax
Level 1
Level 1
Posts: 23
Joined: Thu Jan 21, 2010 1:44 pm

Re: fm3 preliminary package for testing.

Post by xazax »

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.
ju1ius

Re: fm3 preliminary package for testing.

Post by ju1ius »

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.
Locked

Return to “Software & Applications”