firewall-applet GTK+ -> Qt

poma pomidorabelisima at gmail.com
Wed Jun 17 12:52:34 UTC 2015


On 16.06.2015 15:11, Thomas Woerner wrote:
> On 06/16/2015 01:28 PM, poma wrote:
>> On 15.06.2015 13:12, Thomas Woerner wrote:
>>> On 06/15/2015 12:53 PM, poma wrote:
>>>>
>>>> # yum install firewall-applet
>>>> ...
>>>> ====================================================================================================
>>>>    Package                      Arch       Version                                  Repository   Size
>>>> ====================================================================================================
>>>> Installing:
>>>>    firewall-applet              noarch     0.3.14.1-1.fc23                          rawhide      96 k
>>>> Installing for dependencies:
>>>>    kde-filesystem               x86_64     4-51.fc22                                rawhide      53 k
>>>>    libqzeitgeist                x86_64     0.8.0-13.fc23                            rawhide      75 k
>>>>    phonon                       x86_64     4.8.3-4.fc23                             rawhide     204 k
>>>>    phonon-backend-gstreamer     x86_64     2:4.8.2-3.fc23                           rawhide     147 k
>>>>    proj                         x86_64     4.9.1-2.fc23                             rawhide     209 k
>>>>    python3-PyQt4                x86_64     4.11.4-1.fc23                            rawhide     3.1 M
>>>>    python3-sip                  x86_64     4.16.8-1.fc23                            rawhide      99 k
>>>>    qt-mobility-common           x86_64     1.2.2-0.20.20140317git169da60c.fc23      rawhide      39 k
>>>>    qt-mobility-location         x86_64     1.2.2-0.20.20140317git169da60c.fc23      rawhide     584 k
>>>>    qt-mobility-sensors          x86_64     1.2.2-0.20.20140317git169da60c.fc23      rawhide     125 k
>>>>    qtwebkit                     x86_64     2.3.4-7.fc23                             rawhide      10 M
>>>>
>>>> Transaction Summary
>>>> ====================================================================================================
>>>> Install  1 Package (+11 Dependent packages)
>>>>
>>>> Total download size: 15 M
>>>> Installed size: 56 M
>>>> Is this ok [y/d/N]:
>>>>
>>>>
>>>> firewalld-0.3.14
>>>> https://lists.fedorahosted.org/pipermail/firewalld-devel/2015-June/000175.html
>>>>
>>>> firewall-applet:
>>>>      - new version using Qt4 fixing several issues with the Gtk version
>>>>
>>>>
>>>> What were the actual issues with the GTK+ version?
>>>>
>>>
>>> There have been several issues with the gtk applet:
>>>
>>> 1) The gtk statusicon widget is deprecated in gtk3, will be removed
>>> soon. Going back to gtk2 is not a solution.
>>
>> Xfce CORE is still GTK+ 2 based, therefore -stay- on GTK+ 2 -is- a solution. ;)
> 
> The old applet was using gtk3 since 2012. There are issues with gtk2 and 
> introspection. The use of pygtk was also not an option because of 
> missing python3 support, it also pulled in gobject, which then 
> conflicted with dbus.
> 
>>
>>> 2) The status icon was sometimes invisible without an error, warning or
>>> any way to find out why, especially in Gnome3.
>>
>> No problemos within the Xfce, works OK.
>>
> Yes, there have not been issues in Xfce for also all the time. But there 
> have been lots of issues with Gnome3. I had work arounds in the applet, 
> but those were not working with all Gnome3 versions.
> 
>>> 3) The status icon was sometimes not showing the icon without an error,
>>> warning or any way to find out why, especially in Gnome3 and gtk based
>>> desktop environments.
>>
>> No problemos within the Xfce, works OK.
>>
> See above.
> 
>>> 4) With KDE5 there is no support for old-style system tray icons
>>> anymore. Only Qt based applets and AppIndicator applets are supported,
>>> but AppIndicator has the same issues with the icons in Gnome3 and other
>>> gtk based desktops.
>>>
>>
>> That's right, the Application Indicators aka "AppIndicator" is the Canonical/Ubuntu/Unity technology.
>>
>>> The Qt applet is working in KDE5, Gnome3, Xfce, Mate and others
>>> supporting system tray icons without any issues for me. Therefore this
>>> is the way to go.
>>>
>>
>> There are some issues, at least within the Xfce - "shrivel" systray icon.
>> See "firewall-applet-Qt4-shrivel-systray-icon.png"
>>
>> Same crap happens as with the vlc systray icon, again Qt4.
>>
> I do not see this in Xfce. Do you have special panel settings?
> 

I've caricatured with the size, but the essence is the same:
http://goo.gl/Gm4ffO
Screencast/teeny-weeny.webm


>>> Additionally while doing the recode in Qt I realized that the UI
>>> handling with Qt is much simpler and more predictable. I plan to port
>>> firewall-config also over to Qt for one of the next releases.
>>>
>>
>> Qt5 - ready steady?
>>
> There is also a Qt5 version, but it behaving strange in KDE5.
> 

Bug report?
It's a matter of time when you'll do it anyway in Qt5, right?


>> "Qt 4.8.7 Released - Marks The End Of Qt4"
>> http://www.phoronix.com/scan.php?page=news_item&px=qt-4.8.7-qt4-update-released
>>
>>
>> https://github.com/t-woerner/firewalld/commit/2625806
>> New firewall-applet version using Qt
>> - Dropped shields up/down mechanism, was not optimal.
>>
>> Please explain what was -not optimal-, related to "Shields" functionality.
>>
> Shields-up/-down was settings the default zone in firewalld. There is no 
> runtime only setting for the default zone, therefore it was setting it 
> for the whole system in a persistent way.
> 
> If there is a request, I will add it to the new applet.
> 

This should be studied.

>>
>> $ rpm -q firewall-applet
>> firewall-applet-0.3.14.1-1.fc23.noarch
>>
>> $ rpm -ql firewall-applet | grep man
>> /usr/share/man/man1/firewall-applet.1.gz
>>
>> $ man /usr/share/man/man1/firewall-applet.1.gz
>> ...
>> GSETTINGS
>> firewall-applet has additional settings to adapt the look and feel.
>> The used backend depends on the distribution and can be either dconf or GConf.
>> The path to the settings is org.fedoraproject.FirewallApplet.
>> You can use dconf-editor or gconf-editor to see and modify them.
>> The following settings are supported:
>> ...
>> show-inactive
>> ...
>> blink
>> ...
>> blink-count
>>
>> Is this manual a bit outdated?
>   Oh yes, I forgot to adapt the man page. Thanks for finding this one.
> 
>> https://github.com/t-woerner/firewalld/commit/5b47854
>> Dropped applet gschema remain: org.fedoraproject.FirewallApplet.gschema.xml
>>
>> BTW
>> dconf write /org/fedoraproject/FirewallApplet/show-inactive true
>> dconf write /org/fedoraproject/FirewallApplet/blink true
>> dconf dump /org/fedoraproject/FirewallApplet/
>> [/]
>> show-inactive=true
>> blink=true
>>
>> What is equivalent to this, now in Qt4 form?
>>
> As far as I know there is no command line tool for this. You can 
> create/change ~/.config/firewall-applet/firewalld.conf
> 
> The names here are bad, so I hanged them to 
> ~/.config/firewall/applet.conf: 
> https://github.com/t-woerner/firewalld/commit/f137568077af9a11823cdee816f80f16ff6deec8
> 
> 
> 

$ cat ~/.config/firewall/applet.conf
[General]
notifications=false  <-- works OK / also via the applet menu
show-inactive=true   <-- works -but- applet restart is needed to apply change - why?
blink=true           <-- broken - does not work at all
blink-count=10       <-- brokne - see "blink"

Tested with:
firewall-applet-0.3.14.2-1.fc22.noarch


Please implement also a system-wide config,
e.g.

/etc/firewall/applet.conf
[General]
...




More information about the firewalld-devel mailing list