Check if Gnome keyring is unlocked?
Clash Royale CLAN TAG#URR8PPP
up vote
3
down vote
favorite
I am searching for a method with which to determine whether a Gnome keyring is unlocked; primarily, the default one. I got very close using secret-tool
, but if a keyring is locked, it still presents a dialog.
I do not want to ask the user to unlock the keyring.
Either it is locked, or it is unlocked, end of story. The intent is to avoid the user ever having to know or think about keyrings. If the keyring is locked, do a thing (delete all keyrings), if a keyring is unlocked, do another thing (proceed as normal), all silently in the background.
So the question is, which tool actually allows that sort of check? I've got the rest of the script in place, I only need a silent replacement of secret-tool
.
gnome gnome-keyring
add a comment |Â
up vote
3
down vote
favorite
I am searching for a method with which to determine whether a Gnome keyring is unlocked; primarily, the default one. I got very close using secret-tool
, but if a keyring is locked, it still presents a dialog.
I do not want to ask the user to unlock the keyring.
Either it is locked, or it is unlocked, end of story. The intent is to avoid the user ever having to know or think about keyrings. If the keyring is locked, do a thing (delete all keyrings), if a keyring is unlocked, do another thing (proceed as normal), all silently in the background.
So the question is, which tool actually allows that sort of check? I've got the rest of the script in place, I only need a silent replacement of secret-tool
.
gnome gnome-keyring
add a comment |Â
up vote
3
down vote
favorite
up vote
3
down vote
favorite
I am searching for a method with which to determine whether a Gnome keyring is unlocked; primarily, the default one. I got very close using secret-tool
, but if a keyring is locked, it still presents a dialog.
I do not want to ask the user to unlock the keyring.
Either it is locked, or it is unlocked, end of story. The intent is to avoid the user ever having to know or think about keyrings. If the keyring is locked, do a thing (delete all keyrings), if a keyring is unlocked, do another thing (proceed as normal), all silently in the background.
So the question is, which tool actually allows that sort of check? I've got the rest of the script in place, I only need a silent replacement of secret-tool
.
gnome gnome-keyring
I am searching for a method with which to determine whether a Gnome keyring is unlocked; primarily, the default one. I got very close using secret-tool
, but if a keyring is locked, it still presents a dialog.
I do not want to ask the user to unlock the keyring.
Either it is locked, or it is unlocked, end of story. The intent is to avoid the user ever having to know or think about keyrings. If the keyring is locked, do a thing (delete all keyrings), if a keyring is unlocked, do another thing (proceed as normal), all silently in the background.
So the question is, which tool actually allows that sort of check? I've got the rest of the script in place, I only need a silent replacement of secret-tool
.
gnome gnome-keyring
asked Jul 4 at 17:18
DigitalMan
1213
1213
add a comment |Â
add a comment |Â
1 Answer
1
active
oldest
votes
up vote
1
down vote
Gnome Keyring Tools (i made some little tools to check and control gnome keyring)
Sources & Release : https://github.com/intika/gnome-keyring-tools
Lock Keyring - gkey-lock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_lock_all_sync();
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully lockedn");
return 0;
else
printf("Error locking keyring: %dn", lock_result);
return 1;
Unlock Keyring - gkey-unlock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_unlock_sync(NULL,NULL);
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully unlockedn");
return 0;
else
printf("Error unlocking keyring: %dn", lock_result);
return 1;
Check Keyring - gkey-check.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringInfo *info;
GnomeKeyringResult gkr;
gkr = gnome_keyring_get_info_sync(NULL, &info);
if (gkr != GNOME_KEYRING_RESULT_OK)
printf("errorn");
return -1;
if (gnome_keyring_info_get_is_locked(info))
printf("lockedn");
return 0;
else
printf("unlockedn");
return -1;
gnome_keyring_info_free(info);
How to build
cc gkey-lock.c -o gkey-lock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-unlock.c -o gkey-unlock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-check.c -o gkey-check -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
Bonus - Check With Python - gkey-check.py
import gnomekeyring
print gnomekeyring.get_info_sync(gnomekeyring.get_default_keyring_sync()).get_is_locked()
Bonus II - Monitor Gnome Keyring State In KDE Taskbar/Tray
I made gkey-check return error when its unlocked in addition to the string unlocked
i could then use KDE Server Status
widget to monitor keyring state locked/unlocked with a visual icon :) with the command gkey-check
add a comment |Â
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
Gnome Keyring Tools (i made some little tools to check and control gnome keyring)
Sources & Release : https://github.com/intika/gnome-keyring-tools
Lock Keyring - gkey-lock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_lock_all_sync();
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully lockedn");
return 0;
else
printf("Error locking keyring: %dn", lock_result);
return 1;
Unlock Keyring - gkey-unlock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_unlock_sync(NULL,NULL);
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully unlockedn");
return 0;
else
printf("Error unlocking keyring: %dn", lock_result);
return 1;
Check Keyring - gkey-check.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringInfo *info;
GnomeKeyringResult gkr;
gkr = gnome_keyring_get_info_sync(NULL, &info);
if (gkr != GNOME_KEYRING_RESULT_OK)
printf("errorn");
return -1;
if (gnome_keyring_info_get_is_locked(info))
printf("lockedn");
return 0;
else
printf("unlockedn");
return -1;
gnome_keyring_info_free(info);
How to build
cc gkey-lock.c -o gkey-lock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-unlock.c -o gkey-unlock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-check.c -o gkey-check -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
Bonus - Check With Python - gkey-check.py
import gnomekeyring
print gnomekeyring.get_info_sync(gnomekeyring.get_default_keyring_sync()).get_is_locked()
Bonus II - Monitor Gnome Keyring State In KDE Taskbar/Tray
I made gkey-check return error when its unlocked in addition to the string unlocked
i could then use KDE Server Status
widget to monitor keyring state locked/unlocked with a visual icon :) with the command gkey-check
add a comment |Â
up vote
1
down vote
Gnome Keyring Tools (i made some little tools to check and control gnome keyring)
Sources & Release : https://github.com/intika/gnome-keyring-tools
Lock Keyring - gkey-lock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_lock_all_sync();
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully lockedn");
return 0;
else
printf("Error locking keyring: %dn", lock_result);
return 1;
Unlock Keyring - gkey-unlock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_unlock_sync(NULL,NULL);
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully unlockedn");
return 0;
else
printf("Error unlocking keyring: %dn", lock_result);
return 1;
Check Keyring - gkey-check.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringInfo *info;
GnomeKeyringResult gkr;
gkr = gnome_keyring_get_info_sync(NULL, &info);
if (gkr != GNOME_KEYRING_RESULT_OK)
printf("errorn");
return -1;
if (gnome_keyring_info_get_is_locked(info))
printf("lockedn");
return 0;
else
printf("unlockedn");
return -1;
gnome_keyring_info_free(info);
How to build
cc gkey-lock.c -o gkey-lock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-unlock.c -o gkey-unlock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-check.c -o gkey-check -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
Bonus - Check With Python - gkey-check.py
import gnomekeyring
print gnomekeyring.get_info_sync(gnomekeyring.get_default_keyring_sync()).get_is_locked()
Bonus II - Monitor Gnome Keyring State In KDE Taskbar/Tray
I made gkey-check return error when its unlocked in addition to the string unlocked
i could then use KDE Server Status
widget to monitor keyring state locked/unlocked with a visual icon :) with the command gkey-check
add a comment |Â
up vote
1
down vote
up vote
1
down vote
Gnome Keyring Tools (i made some little tools to check and control gnome keyring)
Sources & Release : https://github.com/intika/gnome-keyring-tools
Lock Keyring - gkey-lock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_lock_all_sync();
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully lockedn");
return 0;
else
printf("Error locking keyring: %dn", lock_result);
return 1;
Unlock Keyring - gkey-unlock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_unlock_sync(NULL,NULL);
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully unlockedn");
return 0;
else
printf("Error unlocking keyring: %dn", lock_result);
return 1;
Check Keyring - gkey-check.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringInfo *info;
GnomeKeyringResult gkr;
gkr = gnome_keyring_get_info_sync(NULL, &info);
if (gkr != GNOME_KEYRING_RESULT_OK)
printf("errorn");
return -1;
if (gnome_keyring_info_get_is_locked(info))
printf("lockedn");
return 0;
else
printf("unlockedn");
return -1;
gnome_keyring_info_free(info);
How to build
cc gkey-lock.c -o gkey-lock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-unlock.c -o gkey-unlock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-check.c -o gkey-check -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
Bonus - Check With Python - gkey-check.py
import gnomekeyring
print gnomekeyring.get_info_sync(gnomekeyring.get_default_keyring_sync()).get_is_locked()
Bonus II - Monitor Gnome Keyring State In KDE Taskbar/Tray
I made gkey-check return error when its unlocked in addition to the string unlocked
i could then use KDE Server Status
widget to monitor keyring state locked/unlocked with a visual icon :) with the command gkey-check
Gnome Keyring Tools (i made some little tools to check and control gnome keyring)
Sources & Release : https://github.com/intika/gnome-keyring-tools
Lock Keyring - gkey-lock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_lock_all_sync();
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully lockedn");
return 0;
else
printf("Error locking keyring: %dn", lock_result);
return 1;
Unlock Keyring - gkey-unlock.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringResult lock_result = gnome_keyring_unlock_sync(NULL,NULL);
if (lock_result == GNOME_KEYRING_RESULT_OK)
printf("Successfully unlockedn");
return 0;
else
printf("Error unlocking keyring: %dn", lock_result);
return 1;
Check Keyring - gkey-check.c
#include <stdio.h>
#include <gnome-keyring.h>
int main()
GnomeKeyringInfo *info;
GnomeKeyringResult gkr;
gkr = gnome_keyring_get_info_sync(NULL, &info);
if (gkr != GNOME_KEYRING_RESULT_OK)
printf("errorn");
return -1;
if (gnome_keyring_info_get_is_locked(info))
printf("lockedn");
return 0;
else
printf("unlockedn");
return -1;
gnome_keyring_info_free(info);
How to build
cc gkey-lock.c -o gkey-lock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-unlock.c -o gkey-unlock -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
cc gkey-check.c -o gkey-check -Wall -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgnome-keyring -lglib-2.0
Bonus - Check With Python - gkey-check.py
import gnomekeyring
print gnomekeyring.get_info_sync(gnomekeyring.get_default_keyring_sync()).get_is_locked()
Bonus II - Monitor Gnome Keyring State In KDE Taskbar/Tray
I made gkey-check return error when its unlocked in addition to the string unlocked
i could then use KDE Server Status
widget to monitor keyring state locked/unlocked with a visual icon :) with the command gkey-check
edited Jul 17 at 1:46
answered Jul 16 at 8:53
intika
1505
1505
add a comment |Â
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f453459%2fcheck-if-gnome-keyring-is-unlocked%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password