Commit graph

620 commits

Author SHA1 Message Date
Gustavo Iñiguez Goia
e8ff8349f2
ui: improved notifications behaviour
Up until now, clicking on a system notification caused several
behaviours depending on the Desktop Environment:
 - On Gnome it executed opensnitch_ui.desktop, which as of today kills
   the running opensnitch-ui process, and relaunches it.
 - On other DEs the notifications was just dismissed.

To improve the first behaviour, the Hint "desktop-entry" has been removed.
Now clicking on a notification on Gnome will bring the main window to the
front if it's opened.

On the other hand a new button has been added to the notifications, to
open the main window if it's not opened, or bring it to the front
otherwise.
2023-04-22 01:35:58 +02:00
Gustavo Iñiguez Goia
74b6bc2c29
ui: improved DefaultAction behaviour
- On the very first install, or if the GUI's settings.conf file was not
  created, GUI's DefaultAction item was not configured properly.
- Now when the daemon is not connected to the GUI, it'll use the
  DefaultAction configured in /etc/opensnitchd/default-config.json
- When the daemon is connected to the GUI, the GUI will reconfigure
  daemon's DefaultAction value when the one defined by the GUI.
  In this case the value defined in default-config.json is not modified,
  it'll only be valid while it's connected to the GUI.

Now when opening Preferences->Nodes, it'll display daemon's
DefaultAction defined in the file default-config.json file, which is the
default action applied when the daemon is not connected to the GUI.

Related: #884 , #896
2023-04-16 00:49:51 +02:00
Gustavo Iñiguez Goia
fb27e4cbb1
ui,fw: allow to use CIDR notation to add IPs
When adding firewall rules with IPs ranges, allow to use CIDR notation
(1.2.3.4/56).
Previously only 2.2.2.3-2.2.2.100 was supported.
2023-04-15 00:41:22 +02:00
Gustavo Iñiguez Goia
05bb37e862
ui, fw: added more checks for rules creation
- Don't allow a 0 or empty statement value, except for Meta.
- snat, dnat and redirect parameters must contain ":" to specify a port
  or ip+port (192.168.1.1:8080, :8080).
- queue verdict parameter must be an integer.
2023-04-13 00:07:08 +02:00
Gustavo Iñiguez Goia
31f9f904f3
ui, fw: allow to configure verdicts parameters
- Allow to configure DNAT, SNAT, REDIRECT and QUEUE verdicts' parameters.
- Allow to add rules to FORWARD, PREROUTING and POSTROUTING chains.
2023-04-12 22:45:17 +02:00
Gustavo Iñiguez Goia
d374b4df02
ui, views: allow to copy cells' value
Allow to copy cells values when on a detailed view, by double clicking
on a cell.
2023-04-09 13:05:52 +02:00
Gustavo Iñiguez Goia
75cacf3530
ui, prefs: fixed loading nodes if no langs available
Don't fail loading nodes if there're no languages available.
2023-03-23 23:49:13 +01:00
Gustavo Iñiguez Goia
c2352d0934
ui, pop-ups: increased default timeout to 30s
Although the timeout is configurable from the Preferences dialog,
there's a consensus that the default timeout should be increased.
2023-03-05 22:05:32 +01:00
Gustavo Iñiguez Goia
f0fdc02910
i18n: added new Dutch translation
Thanks to @Vistaus
2023-03-02 11:23:23 +01:00
Gustavo Iñiguez Goia
0ced786eae
ui, i18n,prefs: capitalize languages, minor refactoring 2023-02-28 22:42:22 +01:00
NRGLine4Sec
7273f73e59
make version consistent with github tags (#870)
* make version consistent with github tags
2023-02-28 22:21:55 +01:00
Bernz Pallek
63f6ff6e3b fixed typo, made tooltip text more conventional 2023-02-28 11:23:54 -05:00
Gustavo Iñiguez Goia
e786bf5c50
ui, i18n: allow to change language from the GUI
Restarting the GUI is required for now.

Closes #709 #803
2023-02-28 01:59:10 +01:00
Gustavo Iñiguez Goia
df5fe3b373
ui: fixed exception colorizing cells
On some distros (Fedora 37), on the very 1st launch of the GUI, it
crashed with the error:
 "object of type QCommonStyle has been deleted"

The only way I've found of getting rid of this error is by obtaining this
object on every paint() call.
2023-02-26 17:40:50 +01:00
Gustavo Iñiguez Goia
303c7f7e82
ui, preferences: better DB selection 2023-02-26 15:58:57 +01:00
Gustavo Iñiguez Goia
a586e0d276
ui, preferences: improved wigdets enabling/disabling
By default disable DB options to delete old events.
If DB type is in-memory, disable DB options to delete old events.
2023-02-26 15:24:04 +01:00
Gustavo Iñiguez Goia
9a751026eb
ui: reverting in-memory DB cached file URI
In 5b5e2714ae we added support for
in-memory cached DB, to allow delete old events from memory (#844).

Unfortunately, on some systems this URI (file::memory:?cache=shared)
creates a file on disk on user's home.

This file is in the end a DB, so if users want to delete old events,
they'll have to save events to disk.

On the other hand, when in-memory DB is selected, we now disable the
option to delete old events from memory.

Closes #857
2023-02-26 12:23:11 +01:00
Gustavo Iñiguez Goia
ea5adfb05a
ui: improved events window icons
Fallback to -symbolic icons if default icon theme is not found
(mainly on Fedora+GNOME).
2023-02-26 01:57:10 +01:00
Gustavo Iñiguez Goia
2f0d21f9cc
ui: removed label from rules editor dialog
Make a little more room for widgets.
2023-02-25 13:04:59 +01:00
Gustavo Iñiguez Goia
71c734c0d6
ui: fixed icons on rules editor dialog 2023-02-25 12:40:23 +01:00
Gustavo Iñiguez Goia
0114185d9b
i18n: updated Hungarian translation 2023-02-24 23:57:44 +01:00
Gustavo Iñiguez Goia
dc8ac1cd7c
ui: fixed 64x64 icon 2023-02-24 22:05:02 +01:00
Gustavo Iñiguez Goia
dbb7d6a198
ui: fixed exception painting events rows 2023-02-23 23:39:28 +01:00
Gustavo Iñiguez Goia
c4a9a98944
ui: updated appstream Summary,Description fields 2023-02-22 21:03:13 +01:00
Gustavo Iñiguez Goia
475ae98702
ui: fixed utils
rel: #847
2023-02-20 23:04:03 +01:00
Gustavo Iñiguez Goia
b53e2af52a
Bump versions to 1.6.0rc5 2023-02-18 20:37:08 +01:00
Petter Reinholdtsen
8a01607a4f Corrected appstream icon name.
Made sure the base name used matches the svg and png icons provided.
2023-02-18 18:31:31 +01:00
Petter Reinholdtsen
2c9da76131 Added appstream content rating, no restrictions. 2023-02-18 18:31:10 +01:00
Gustavo Iñiguez Goia
5b5e2714ae
db: use shared cache for in-memory db
Due to how QsqlDatabase works from different threads, a connection to
the DB can only be used from the thread that created it.

In order to access a database from different threads you create a new
QsqlDatabase connection to the DB specifying the DB name/file.

With DBs written to the disk, the database file/name is always the
same (say /tmp/file.db).

But with in-memory databases, whenever you create a new connection with
:memory:, it always create a new in-memory DB, so the DB is empty for
the Cleaner() task, and that's why it was not deleting old events.

Closes #844
2023-02-13 01:00:34 +01:00
Gustavo Iñiguez Goia
4540650b07
ui: use XDG_CONFIG_HOME to store GUI configuration
Closes: #847
2023-02-13 00:59:10 +01:00
Gustavo Iñiguez Goia
b7f065e018
i18n: updated Turkish translation 2023-02-12 12:04:57 +01:00
Gustavo Iñiguez Goia
e9184372e1
ui: fixed typo in ruleseditor 2023-02-12 00:50:22 +01:00
Gustavo Iñiguez Goia
ac21d3c98d
ui: minor rules refactoring
Reference db records fields by constants instead of numbers.
2023-02-12 00:02:33 +01:00
Gustavo Iñiguez Goia
f5d357207e
ui: added 64x64 icon 2023-02-11 21:50:49 +01:00
Gustavo Iñiguez Goia
8241811478
ui: updated resources
36c26e60f6

4baf218570

Author: Petter Reinholdtsen <pere@hungry.com>
2023-02-11 14:10:59 +01:00
Gustavo Iñiguez Goia
3cec971a1f ui: allow to create rules from events
Added option to create rules from events, filling up the fields of the
new rule with the properties of a connection.

By default the rules' fields are not enabled.

Closes: #843
2023-02-11 13:40:41 +01:00
Gustavo Iñiguez Goia
156e936ae7
ui: added appstream metainformation file
Added file to display GUI information on software centers.

https://www.freedesktop.org/software/appstream/docs/
2023-02-06 21:59:19 +01:00
Gustavo Iñiguez Goia
b6d62eeb02
ui: fixed listing connections when using translations 2023-02-06 17:25:18 +01:00
Gustavo Iñiguez Goia
758b7ce1a8
i18n: fixed creating locales on fedora
kudos to pizzadude for adding a note to the wiki.
2023-02-06 13:59:49 +01:00
Gustavo Iñiguez Goia
9ad67555e6
updated translations definitions 2023-02-06 13:28:50 +01:00
Gustavo Iñiguez Goia
b08cd6b07c
updated translations 2023-02-06 13:02:58 +01:00
Gustavo Iñiguez Goia
846b1c5efa
i18n: added new language nb_NO
by Petter Reinholdtsen
2023-02-06 11:02:44 +01:00
Spencer Comfort
5cdbd6182a
Remove unused parameters (#829)
* Update highlight.py
2023-02-05 22:14:45 +01:00
Gustavo Iñiguez Goia
e2dfb3a021
ui: fixed exception on PyQt 5.15.8 (2/2)
reported by @darkfishy and @uffejakobsen (#821), thank you!
2023-01-29 19:49:40 +01:00
Gustavo Iñiguez Goia
1c66d83835
ui: fixed exception on PyQt 5.15.8
reported by @darkfishy and @uffejakobsen (#821), thank you!
2023-01-29 19:07:25 +01:00
Gustavo Iñiguez Goia
1790c80e03
ui: delete temp rules only if enabled 2023-01-26 12:06:26 +01:00
Gustavo Iñiguez Goia
649e1cceac
ui: more options to exclude/autoflush temp rules
Added more options for auto excluding/deleting temporary rules.
If the GUI was configured to store events to disk, you could end up
having thousands of temporary rules over time.

Closes: #622
2023-01-26 11:16:09 +01:00
Petter Reinholdtsen
3d38ffbd07 Added copyright and license header to daemon/main.go and ui/bin/opensnitch-ui.
Based on git history with no lower threshold on contributions, so any
contributors get a copyright claim in the code.
2023-01-23 06:13:40 +00:00
Gustavo Iñiguez Goia
c96f647b96
ui: added tr, ru, and lt languages
d838a2122e
2023-01-23 01:31:10 +01:00
Gustavo Iñiguez Goia
8674aed617
ui: fixed app icon
was 48x35 instead of 48x48
2023-01-22 16:58:12 +01:00