-research how to detect certificate expiry when client is not active (maybe cron..)
-research how to notify user , make sure it works in a generic way (not only gnome)
-code implementation
edit: the scope of this issue changed, see comment below.
-research how to detect certificate expiry when client is not active (maybe cron..)
-research how to notify user , make sure it works in a generic way (not only gnome)
-code implementation
edit: the scope of this issue changed, see comment below.
The CLI implemented in the 2.0 branch is partially enabling this solution, but I'm not convinced it's going to be easy to build a solution that will solve all use cases for advanced novice users simultaneously.
the eduvpn-client refresh subcommand should now be fully functional, and hopefully, this is enough for now.
To address both this issue and #352, I propose separating the app from the interface.
I'm considering defining a Gtk Application, which would:
The app remains running the background if the interface window is closed.
The interface window would then interact with the app to update the connection and subscribe to state changes.
We could theoretically have multiple interface windows open simultaniously,
although we maybe want to limit that to a single interface window.
If the app is explicitly closed, we could disconnect from the server to prevent it from becoming unmanaged. Maybe we could also prevent connecting through NM when the app is not running by ending the session through the V3 api. That way, we can guaranty that the connection is always managed.
Since for now, we are not considering the headless mode (#404), we don't need to be able to renew certs without the UI running. We first need to make sure the UI is always running (#370). Then we need to implement the cert renewal procedure. I'm not sure if the splitting of the app from the interface is required, I propose just adding a GTK tray icon so the app is always running, it can be minimised to the tray and action can be taken with a certain interval. This can be done with a thread or other means of delayed calling the cert renewal procedure.
No due date set.
No dependencies set.
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?