Application - Credentials Management
- From: Anukul Sangwan <anukulsangwan icloud com>
- To: internships-admin gnome org
- Subject: Application - Credentials Management
- Date: Sun, 30 Sep 2018 13:27:28 +0000 (GMT)
A copy of this is available on Dropbox Paper - https://paper.dropbox.com/doc/GNOME-Application--AOHM77iyFpnWf0os1ceRqT7JAQ-wHqNnHcwuA0frxStJEgAR
yes
yes
== Personal Information ==
If you are accepted, fields in this section that are marked "(public)" will be displayed on a public acceptances page. If you prefer different information to be displayed publicly than you want to provide in this form, please provide both a private version visible only to the coordinators and mentors of the internship, and a public version to be displayed publicly.
Name (public): Anukul Sangwan
Preferred pronoun (e.g. she, he, they): he
E-mail address: anukulsangwan icloud com
IRC nick (public, optional): anukul
Twitter URL (public, optional):
Website or Portfolio URL (optional):
Any other online presence URL you wish to provide:
Location (city, state/province, and country) (public): Hyderabad, India
Education completed or in progress (include university, major/concentration, degree level, and graduation year):
IIIT Hyderabad, India
B.Tech & M.S. by Research
Computer Science & Engineering
Graduating in 2021
How did you hear about this internship? Found it on google search
== Project Information ==
What project are you interested in?
Credentials Management
Who is a possible mentor for the project you are interested in?
Tobias Mueller
Please describe your experience with the GNOME community and GNOME projects as a user and as a contributor. Some experience with GNOME stack and some contributions to GNOME are required for considering the application. Include information and links to the contributions you made:
I've been a long time GNOME user, but only recently started contributing through Seahorse, which is related to the project I'm interested in.
My experience with that is described in the answer to the next question.
Please describe your experience with the project you are interested to participate as a user and as a contributor and relevant areas. Include information and links to the contributions you made:
Contributing to Seahorse has been quite comfortable for me.
nielsdg had labelled beginner friendly issues so I was able to find my way around the codebase easily. He also helped regarding the problems I faced, since I was new to the GNOME stack.
Contributions:
I think this change is quite significant
- WIP: Port Gtk.Action to GLib.Action, remove deprecated Gtk.UIManager, use a GMenu
https://gitlab.gnome.org/anukul/seahorse/commits/actions
The following are all minor bug fixes:
- MR !8 [merged] - Use Gcr.FilterCollection for the search provider : issue #179
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/8
- MR !9 [merged] - Fix right click signal callback : issue #105: Cannot delete multi-selected SSH keys
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/9
- MR !19 [open] - Change keyservers treeview to listbox in preferences : issue #186
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/19
- MR !21 [merged] - Attempt to unlock keyring when adding a key : issue #87
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/21
- MR !22 [open] - Change active collection view to reflect added item
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/22
- MR !26 [merged] - Fix view filter callback : issue #196: Login passwords aren't treated as "personal" any more
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/26
- MR !27 [merged] - Use Shell.quote for escaping arguments to ssh-keygen : issue #197
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/27
- MR !29 [open] - Use Gkr.LockButton instead of custom implementation : issue #199
https://gitlab.gnome.org/GNOME/seahorse/merge_requests/29
Please describe your experience with any other FOSS projects as a user and as a contributor:
I participated in Google Code-In a couple of times in high school. It helped me get familiar with git and basic web development. As a user of free software, I used to find it lacking in some respect (features, UI/UX) in comparison to non-open source alternatives, but that’s starting to change with things like VS Code, GNOME 3, Firefox and VLC etc which are some of the best applications in their domain. I think that when the majority of GNOME applications adopt the new HIG, the user experience would be at least as good, if not better than that of macOS, and any linux distribution with a good support community and easy package management could probably become a mainstream operating system, with a large user (and contributor) base.
Please describe any relevant projects that you have worked on previously and what knowledge you gained from working on them (include links):
I interned at an incubator (T-Hub) for a year, working on full stack development of their website and internal community portal.
It was proprietary software, so the code is closed source, but that experience helped me get acquainted with a lot of different software development concepts, which also proved quite useful in working on Seahorse, and in generally understanding how most applications follow certain common design patterns.
Please describe the details and the timeline of the work you plan to accomplish on the project you are most interested in (discuss these first with the mentor of the project):
IDEAS
I would like to work on making Seahorse the go-to app for managing authentication data on GNOME. This includes working on at least a subset of these tasks:
- Improve the integration between GNOME keyring and browsers for saving passwords, allow users to manage this data from Seahorse as far as is possible
- Work on data sync through the accounts in the SSO app - gnome-online-accounts
- Improve HIG compliance (taking ideas from Archive/gnome-credentials)
- https://deisui.org/~ueno/seahorse-headerbar.webm
- Replace the menu bar with a header bar
- Replace sidebar list with a view switcher (maybe use a stack sidebar for keyrings)
- TODO: Read through the HIG and add more stuff here
- Replace deprecated symbols
- Add unit tests using GLib.Test
- Port pgp backend (gpgme-glib) to vala (?)
- Ideas from filed tickets
- Consider adding TOTP support for 2FA
- I personally use a third party mobile application for TOTP generation and store backup authentication codes in a separate text file
- Add automatic generation and strength detection of passwords
- Consider pgp encryption and signing from within seahorse
- Integrate with settings in gpg.conf
- Look for keyfiles in more places than ~/.ssh (configurable)
- Manage ssh known_hosts using GUI widgets
- Find remote pgp keys by fingerprint
- Add support for librem keys, yubikey, HKPS & LDAPS (added TLS)
I intend to continue working on the tickets and build a concrete timeline involving at least 40 hours of work a week, after discussion with muelli as soon as possible.
Sincerely
Anukul Sangwan
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]