From 1a6dbf118487960c229a7e4321e991d902b1464d Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Thu, 28 Jul 2016 16:17:34 -0700 Subject: [PATCH] Rename PGP Sync to GPG Sync --- BUILD.md | 10 ++--- CHANGELOG.md | 2 +- MANIFEST.in | 2 +- README.md | 40 +++++++++--------- {pgpsync => gpgsync}/__init__.py | 2 +- {pgpsync => gpgsync}/buttons.py | 2 +- {pgpsync => gpgsync}/common.py | 6 +-- {pgpsync => gpgsync}/edit_endpoint.py | 0 {pgpsync => gpgsync}/endpoint.py | 0 {pgpsync => gpgsync}/endpoint_selection.py | 0 {pgpsync => gpgsync}/gnupg.py | 2 +- pgpsync/pgpsync.py => gpgsync/gpgsync.py | 12 +++--- {pgpsync => gpgsync}/loading_animation.py | 0 {pgpsync => gpgsync}/settings.py | 8 ++-- {pgpsync => gpgsync}/status_bar.py | 0 {pgpsync => gpgsync}/systray.py | 4 +- install/build_deb.sh | 4 +- install/build_osx.sh | 2 +- install/{pgpsync => gpgsync} | 4 +- install/{pgpsync-osx.py => gpgsync-osx.py} | 4 +- install/gpgsync.desktop | 9 ++++ install/{pgpsync.icns => gpgsync.icns} | Bin install/pgpsync.desktop | 9 ---- install/pyinstaller-osx.spec | 12 +++--- setup.py | 22 +++++----- share/{pgpsync.png => gpgsync.png} | Bin ...sync.plist => org.firstlook.gpgsync.plist} | 0 stdeb.cfg | 2 +- test/common_test.py | 2 +- test/endpoint_test.py | 2 +- test/gnupg_test.py | 4 +- test/status_bar_test.py | 2 +- 32 files changed, 84 insertions(+), 84 deletions(-) rename {pgpsync => gpgsync}/__init__.py (51%) rename {pgpsync => gpgsync}/buttons.py (98%) rename {pgpsync => gpgsync}/common.py (91%) rename {pgpsync => gpgsync}/edit_endpoint.py (100%) rename {pgpsync => gpgsync}/endpoint.py (100%) rename {pgpsync => gpgsync}/endpoint_selection.py (100%) rename {pgpsync => gpgsync}/gnupg.py (99%) rename pgpsync/pgpsync.py => gpgsync/gpgsync.py (98%) rename {pgpsync => gpgsync}/loading_animation.py (100%) rename {pgpsync => gpgsync}/settings.py (92%) rename {pgpsync => gpgsync}/status_bar.py (100%) rename {pgpsync => gpgsync}/systray.py (96%) rename install/{pgpsync => gpgsync} (61%) rename install/{pgpsync-osx.py => gpgsync-osx.py} (67%) create mode 100644 install/gpgsync.desktop rename install/{pgpsync.icns => gpgsync.icns} (100%) delete mode 100644 install/pgpsync.desktop rename share/{pgpsync.png => gpgsync.png} (100%) rename share/{org.firstlook.pgpsync.plist => org.firstlook.gpgsync.plist} (100%) diff --git a/BUILD.md b/BUILD.md index d94193e..42d5b3d 100644 --- a/BUILD.md +++ b/BUILD.md @@ -18,13 +18,13 @@ Install some dependencies using pip3: sudo pip3 install pyinstaller requests requests[socks] packaging ``` -Now you're ready to build the actual app. Go to the `pgpsync` folder before and run this to build the app: +Now you're ready to build the actual app. Go to the `gpgsync` folder before and run this to build the app: ```sh install/build_osx.sh ``` -Now you should have `dist/PGP Sync.app`. +Now you should have `dist/GPG Sync.app`. To codesign and build a .pkg for distribution: @@ -32,7 +32,7 @@ To codesign and build a .pkg for distribution: install/build_osx.sh --sign ``` -Now you should have `dist/PGP Sync.pkg`. NOTE: This isn't implemented yet. +Now you should have `dist/GPG Sync.pkg`. NOTE: This isn't implemented yet. ## Linux distributions @@ -48,12 +48,12 @@ Make and install a .deb: ```sh ./install/build_deb.sh -sudo dpkg -i deb_dist/pgpsync_*.deb +sudo dpkg -i deb_dist/gpgsync_*.deb ``` ## Run the tests -From the `pgpsync` folder run: +From the `gpgsync` folder run: ```sh nosetests diff --git a/CHANGELOG.md b/CHANGELOG.md index ffe5f40..adfea35 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -# PGP Sync Changelog +# GPG Sync Changelog ## 0.1.0 diff --git a/MANIFEST.in b/MANIFEST.in index c96f974..e138635 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,4 +1,4 @@ include *.md include version -include install/pgpsync.desktop +include install/gpgsync.desktop include share/* diff --git a/README.md b/README.md index 303724e..5166a20 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,17 @@ -# PGP Sync +# GPG Sync -![PGP Sync](/logo/logo.png) +![GPG Sync](/logo/logo.png) -PGP Sync is designed to let users always have up-to-date PGP public keys for other members of their organization. +GPG Sync is designed to let users always have up-to-date GPG public keys for other members of their organization. -If you're part of an organization that uses PGP internally you might notice that it doesn't scale well. New people join and create new keys and existing people revoke their old keys and transition to new ones. It quickly becomes unwieldy to ensure that everyone has a copy of everyone else's current key, and that old revoked keys get refreshed to prevent users from accidentally using them. +If you're part of an organization that uses GPG internally you might notice that it doesn't scale well. New people join and create new keys and existing people revoke their old keys and transition to new ones. It quickly becomes unwieldy to ensure that everyone has a copy of everyone else's current key, and that old revoked keys get refreshed to prevent users from accidentally using them. -PGP Sync solves this problem by offloading the complexity of PGP to a single trusted person in your organization (referred to here as the "techie"). As a member of an organization, you install PGP Sync on your computer, configure it with a few settings that the techie gives you, and then you forget about it. PGP Sync takes care of everything else. +GPG Sync solves this problem by offloading the complexity of GPG to a single trusted person in your organization (referred to here as the "techie"). As a member of an organization, you install GPG Sync on your computer, configure it with a few settings that the techie gives you, and then you forget about it. GPG Sync takes care of everything else. It works like this: -* The techie generates an "authority key". Then they create a list of PGP fingerprints that all members of your organization should keep updated, digitally sign this list with the authority key, and upload it to a website so that it's accessible from a public URL. -* All members of the organization install PGP Sync on their computers and configure it with the authority key's fingerprint and the URL of your signed fingerprint list. (Now, all of your members will automatically and regularly fetch this URL and then refresh all of the non-revoked keys on the list from a key server.) +* The techie generates an "authority key". Then they create a list of GPG fingerprints that all members of your organization should keep updated, digitally sign this list with the authority key, and upload it to a website so that it's accessible from a public URL. +* All members of the organization install GPG Sync on their computers and configure it with the authority key's fingerprint and the URL of your signed fingerprint list. (Now, all of your members will automatically and regularly fetch this URL and then refresh all of the non-revoked keys on the list from a key server.) * When new keys in your organization are added, the techie adds them to the fingerprint list, re-signs it with the authority key, and upload it to the same URL. If users migrate to new keys, the techie leaves their old fingerprints on the list so that all other members can tell that their old keys were revoked. Now each member of your organization will have up-to-date public keys for each other member, and key changes will be transitioned smoothly without any further work or interaction. @@ -25,29 +25,29 @@ Here are some features: * Makes sure non-revoked public keys are refreshed once a day * Works seamlessly with the web of trust -## How is PGP Sync different than S/MIME, or running a Certificate Authority for PGP keys? +## How is GPG Sync different than S/MIME, or running a Certificate Authority for GPG keys? -PGP Sync does one thing: Makes sure members of an organization always have up-to-date public keys from a centrally-managed list. +GPG Sync does one thing: Makes sure members of an organization always have up-to-date public keys from a centrally-managed list. Unlike with S/MIME or CAs, users don't need to trust the central authority. At worst, a malicious authority could make you download fake public keys. If you manually verify fingerprints and sign keys, your OpenPGP software should pick the correct key to encrypt to each time. If you don't manually verify fingerprints and sign keys, then at least you won't be automatically encrypting to people's old revoked keys, and you'll get the latest keys for new members of your organization without having to manually find them and import them. If you trust the person who manages the authority key, you could even sign it and set an `ownertrust` to `Full`. If the authority key cross-signs the keys of everyone in your organization, you'll have an internal web of trust, and can have much stronger confidence in all of the keys, even without requiring everyone to sign everyone else's key (a decentralized process that requires exponentially more work with each person who joins the organization). -S/MIME might be a better option than OpenPGP for some organizations. But PGP has the advantage that it's more popular, it doesn't require trusting a central authority, and it's simpler to use when communicating securely with people across multiple organizations. +S/MIME might be a better option than OpenPGP for some organizations. But GPG has the advantage that it's more popular, it doesn't require trusting a central authority, and it's simpler to use when communicating securely with people across multiple organizations. ## Creating the fingerprints file First you must generate an authority key. For higher security, I recommend that you store this key on an OpenPGP smart card such as a Yubikey. Here's an example authority key: ```sh -$ gpg2 --list-keys --fingerprint "PGP Sync Example Authority" +$ gpg2 --list-keys --fingerprint "GPG Sync Example Authority" pub rsa4096/980EA13A 2016-07-07 [SC] [expires: 2017-07-07] Key fingerprint = 2646 A274 C86C 618D 6DB9 23A1 F0B6 DC77 980E A13A -uid [ultimate] PGP Sync Example Authority +uid [ultimate] GPG Sync Example Authority sub rsa4096/9484EB1D 2016-07-07 [E] [expires: 2017-07-07] ``` -Now create a list of all of the fingerprints that your organization uses. I recommend that you manually compare each person's fingerprint before adding it to this list. And while this isn't required by PGP Sync, it's a good idea to sign each person's key with your authority key, and have them sign the authority key back, so you can build an internal web of trust. +Now create a list of all of the fingerprints that your organization uses. I recommend that you manually compare each person's fingerprint before adding it to this list. And while this isn't required by GPG Sync, it's a good idea to sign each person's key with your authority key, and have them sign the authority key back, so you can build an internal web of trust. Each fingerprint should have its own line. Spaces within fingerprints are optional. Comments (which start with `#` characters) and whitespace is ignored, so feel free to mark up your fingerprints file with notes. Here's my example `fingerprints.txt`. @@ -101,21 +101,21 @@ Mw4F3dk/+Xs9XnEh3R2q -----END PGP SIGNATURE----- ``` -Finally, upload `fingerprints.txt.asc` to a website (if you'd like, you could maintain this file in a public git repository) and make a note of the URL, as well as the authority key fingerprint. You'll need to give these two pieces of information to each member of your organization in order to configure PGP Sync on their computers. +Finally, upload `fingerprints.txt.asc` to a website (if you'd like, you could maintain this file in a public git repository) and make a note of the URL, as well as the authority key fingerprint. You'll need to give these two pieces of information to each member of your organization in order to configure GPG Sync on their computers. Each time there is a key change in your organization, you need to add the new fingerprints to `fingerprints.txt`, re-sign it with your authority key, and re-upload it to the same URL. -## Configuring PGP Sync on everyone's computers +## Configuring GPG Sync on everyone's computers ![Screenshot](/logo/screenshot.png) -Each list of fingerprints that you'd like PGP Sync to keep refreshed is called an endpoint, and you can have as many as you'd like (for example, if you belong to multiple organizations). To get started, all you need to do is add an endpoint and specify the `Signing key fingerprint` and the `Signed fingerprints URL`, and click the save button. PGP Sync will verify that the fingerprints file has been set up correctly, and if so, immediately sync the endpoint. +Each list of fingerprints that you'd like GPG Sync to keep refreshed is called an endpoint, and you can have as many as you'd like (for example, if you belong to multiple organizations). To get started, all you need to do is add an endpoint and specify the `Signing key fingerprint` and the `Signed fingerprints URL`, and click the save button. GPG Sync will verify that the fingerprints file has been set up correctly, and if so, immediately sync the endpoint. -That's it. Just leave PGP Sync open in the background, and it will make sure all of your PGP keys get synced at least once a day. +That's it. Just leave GPG Sync open in the background, and it will make sure all of your GPG keys get synced at least once a day. -### Using PGP Sync with Tor +### Using GPG Sync with Tor -It's simple to configure PGP Sync to download the fingerprints URL and refresh public keys from key servers using the Tor network. First, you need to install a system Tor on your computer. +It's simple to configure GPG Sync to download the fingerprints URL and refresh public keys from key servers using the Tor network. First, you need to install a system Tor on your computer. * **Mac OS X:** The easiest way to install Tor and have it always run in the background in OS X is by using [Homebrew](http://brew.sh/). Install it if you don't already have it. Then install Tor and configure it to run in the background by typing this into your terminal: @@ -126,4 +126,4 @@ It's simple to configure PGP Sync to download the fingerprints URL and refresh p * **Linux:** Make sure you have a system Tor installed in the background. In Debian or Ubuntu, you can run `sudo apt install tor` to install it. -Now edit your PGP Sync endpoint and check the box next to `Load URL through SOCKS5 proxy (e.g. Tor)`. Leave the host as `127.0.0.1` and the port as `9050`, and save. +Now edit your GPG Sync endpoint and check the box next to `Load URL through SOCKS5 proxy (e.g. Tor)`. Leave the host as `127.0.0.1` and the port as `9050`, and save. diff --git a/pgpsync/__init__.py b/gpgsync/__init__.py similarity index 51% rename from pgpsync/__init__.py rename to gpgsync/__init__.py index c499921..4ad217b 100644 --- a/pgpsync/__init__.py +++ b/gpgsync/__init__.py @@ -1,2 +1,2 @@ # -*- coding: utf-8 -*- -from .pgpsync import * +from .gpgsync import * diff --git a/pgpsync/buttons.py b/gpgsync/buttons.py similarity index 98% rename from pgpsync/buttons.py rename to gpgsync/buttons.py index 6b5f704..ec30a98 100644 --- a/pgpsync/buttons.py +++ b/gpgsync/buttons.py @@ -20,7 +20,7 @@ def __init__(self, settings): self.quit_btn.clicked.connect(self.quit) # Run automatically - self.run_automatically_checkbox = QtWidgets.QCheckBox("Run PGP Sync automatically on login") + self.run_automatically_checkbox = QtWidgets.QCheckBox("Run GPG Sync automatically on login") if self.settings.run_automatically: self.run_automatically_checkbox.setCheckState(QtCore.Qt.Checked) else: diff --git a/pgpsync/common.py b/gpgsync/common.py similarity index 91% rename from pgpsync/common.py rename to gpgsync/common.py index 68db85b..5af4826 100644 --- a/pgpsync/common.py +++ b/gpgsync/common.py @@ -4,7 +4,7 @@ def alert(msg, details='', icon=QtWidgets.QMessageBox.Warning): d = QtWidgets.QMessageBox() - d.setWindowTitle('PGP Sync') + d.setWindowTitle('GPG Sync') d.setText(msg) if details: @@ -29,7 +29,7 @@ def clean_keyserver(keyserver): def get_resource_path(filename): if platform.system() == 'Linux': - prefix = os.path.join(sys.prefix, 'share/pgpsync') + prefix = os.path.join(sys.prefix, 'share/gpgsync') elif platform.system() == 'Darwin': # Check if app is "frozen" with pyinstaller # https://pythonhosted.org/PyInstaller/#run-time-information @@ -45,7 +45,7 @@ def get_resource_path(filename): def get_icon(): global icon if not icon: - icon = QtGui.QIcon(get_resource_path('pgpsync.png')) + icon = QtGui.QIcon(get_resource_path('gpgsync.png')) return icon syncing_icon = None diff --git a/pgpsync/edit_endpoint.py b/gpgsync/edit_endpoint.py similarity index 100% rename from pgpsync/edit_endpoint.py rename to gpgsync/edit_endpoint.py diff --git a/pgpsync/endpoint.py b/gpgsync/endpoint.py similarity index 100% rename from pgpsync/endpoint.py rename to gpgsync/endpoint.py diff --git a/pgpsync/endpoint_selection.py b/gpgsync/endpoint_selection.py similarity index 100% rename from pgpsync/endpoint_selection.py rename to gpgsync/endpoint_selection.py diff --git a/pgpsync/gnupg.py b/gpgsync/gnupg.py similarity index 99% rename from pgpsync/gnupg.py rename to gpgsync/gnupg.py index 65c5db7..9b9bc70 100644 --- a/pgpsync/gnupg.py +++ b/gpgsync/gnupg.py @@ -84,7 +84,7 @@ def recv_key(self, keyserver, fp, use_proxy, proxy_host, proxy_port): if keyserver == default_hkps_server: # Don't need to add ca_cert_file in OS X, because GPG Tools includes the # correct .pem for hkps://hkps.pool.sks-keyservers.net, and specifying it - # breaks because of a space in the filename (in "PGP Sync.app") + # breaks because of a space in the filename (in "GPG Sync.app") if not self.system == 'Darwin': gpg_conf += 'keyserver-options ca-cert-file={}\n'.format(ca_cert_file) dirmngr_conf += 'hkp-cacert {}\n'.format(ca_cert_file) diff --git a/pgpsync/pgpsync.py b/gpgsync/gpgsync.py similarity index 98% rename from pgpsync/pgpsync.py rename to gpgsync/gpgsync.py index c13f237..1ea3917 100644 --- a/pgpsync/pgpsync.py +++ b/gpgsync/gpgsync.py @@ -22,12 +22,12 @@ def __init__(self): self.setAttribute(QtCore.Qt.AA_X11InitThreads, True) QtWidgets.QApplication.__init__(self, sys.argv) -class PGPSync(QtWidgets.QMainWindow): +class GPGSync(QtWidgets.QMainWindow): def __init__(self, app): - super(PGPSync, self).__init__() + super(GPGSync, self).__init__() self.app = app self.system = platform.system() - self.setWindowTitle('PGP Sync') + self.setWindowTitle('GPG Sync') self.setWindowIcon(common.get_icon()) version_file = common.get_resource_path('version') self.version = parse(open(version_file).read().strip()) @@ -421,7 +421,7 @@ def check_for_updates(self, force=False): self.checking_for_updates = True try: - url = 'https://api.github.com/repos/firstlookmedia/pgpsync/releases/latest' + url = 'https://api.github.com/repos/firstlookmedia/gpgsync/releases/latest' token = '8890473be7c382a70eadb8fbc58ffe0fea913b77' r = requests.get(url, headers={ @@ -440,7 +440,7 @@ def check_for_updates(self, force=False): if self.saved_update_version < latest_version or force: self.show_main_window() - common.alert('A new version of PGP Sync is available.

Current: {}
Latest:   {}

Please download the latest version.
'.format(self.version, latest_version, release['html_url'], token)) + common.alert('A new version of GPG Sync is available.

Current: {}
Latest:   {}

Please download the latest version.
'.format(self.version, latest_version, release['html_url'], token)) self.saved_update_version = latest_version elif self.version == latest_version and force: self.show_main_window() @@ -469,7 +469,7 @@ def configure_autoupdate(self, state): def main(): app = Application() - gui = PGPSync(app) + gui = GPGSync(app) sys.exit(app.exec_()) diff --git a/pgpsync/loading_animation.py b/gpgsync/loading_animation.py similarity index 100% rename from pgpsync/loading_animation.py rename to gpgsync/loading_animation.py diff --git a/pgpsync/settings.py b/gpgsync/settings.py similarity index 92% rename from pgpsync/settings.py rename to gpgsync/settings.py index 6175cb6..e901825 100644 --- a/pgpsync/settings.py +++ b/gpgsync/settings.py @@ -7,9 +7,9 @@ def __init__(self): system = platform.system() if system == 'Windows': appdata = os.environ['APPDATA'] - self.settings_path = '{0}\\pgpsync'.format(appdata) + self.settings_path = '{0}\\gpgsync'.format(appdata) else: - self.settings_path = os.path.expanduser("~/.pgpsync") + self.settings_path = os.path.expanduser("~/.gpgsync") self.load() @@ -61,10 +61,10 @@ def save(self): def configure_run_automatically(self): if platform.system() == 'Darwin': - share_filename = 'org.firstlook.pgpsync.plist' + share_filename = 'org.firstlook.gpgsync.plist' autorun_dir = os.path.expanduser("~/Library/LaunchAgents") elif platform.system() == 'Linux': - share_filename = 'pgpsync.desktop' + share_filename = 'gpgsync.desktop' autorun_dir = os.path.expanduser("~/.config/autostart") if not os.path.exists(autorun_dir): diff --git a/pgpsync/status_bar.py b/gpgsync/status_bar.py similarity index 100% rename from pgpsync/status_bar.py rename to gpgsync/status_bar.py diff --git a/pgpsync/systray.py b/gpgsync/systray.py similarity index 96% rename from pgpsync/systray.py rename to gpgsync/systray.py index c95cae2..b674a75 100644 --- a/pgpsync/systray.py +++ b/gpgsync/systray.py @@ -13,8 +13,8 @@ class SysTray(QtWidgets.QSystemTrayIcon): def __init__(self, version): super(SysTray, self).__init__(common.get_icon()) - self.show_text = 'Show PGP Sync' - self.hide_text = 'Hide PGP Sync' + self.show_text = 'Show GPG Sync' + self.hide_text = 'Hide GPG Sync' # Menu self.menu = QtWidgets.QMenu() diff --git a/install/build_deb.sh b/install/build_deb.sh index b16ba57..ed5ce34 100755 --- a/install/build_deb.sh +++ b/install/build_deb.sh @@ -15,7 +15,7 @@ python3 setup.py --command-packages=stdeb.command bdist_deb echo "" if [[ $? -eq 0 ]]; then echo "To install, run:" - echo "sudo dpkg -i deb_dist/pgpsync_*.deb" + echo "sudo dpkg -i deb_dist/gpgsync_*.deb" else - echo "PGP Sync failed to build!" + echo "GPG Sync failed to build!" fi diff --git a/install/build_osx.sh b/install/build_osx.sh index 8dda5f2..e6fd1d4 100755 --- a/install/build_osx.sh +++ b/install/build_osx.sh @@ -12,5 +12,5 @@ pyinstaller install/pyinstaller-osx.spec --clean if [ "$1" = "--release" ]; then echo "Codesigning is not yet implemented" - productbuild --component "dist/PGP Sync.app" /Applications "dist/PGP Sync.pkg" + productbuild --component "dist/GPG Sync.app" /Applications "dist/GPG Sync.pkg" fi diff --git a/install/pgpsync b/install/gpgsync similarity index 61% rename from install/pgpsync rename to install/gpgsync index b2e1a11..6c4398d 100755 --- a/install/pgpsync +++ b/install/gpgsync @@ -1,4 +1,4 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -import pgpsync -pgpsync.main() +import gpgsync +gpgsync.main() diff --git a/install/pgpsync-osx.py b/install/gpgsync-osx.py similarity index 67% rename from install/pgpsync-osx.py rename to install/gpgsync-osx.py index 49adae0..bdb51d1 100644 --- a/install/pgpsync-osx.py +++ b/install/gpgsync-osx.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- import sys, os -import pgpsync -pgpsync.main() +import gpgsync +gpgsync.main() diff --git a/install/gpgsync.desktop b/install/gpgsync.desktop new file mode 100644 index 0000000..868bc2c --- /dev/null +++ b/install/gpgsync.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=GPG Sync +Comment=Keep up with your organization's GPG public keys +Exec=/usr/bin/gpgsync +Terminal=false +Type=Application +Icon=/usr/share/pixmaps/gpgsync.png +Categories=Network; diff --git a/install/pgpsync.icns b/install/gpgsync.icns similarity index 100% rename from install/pgpsync.icns rename to install/gpgsync.icns diff --git a/install/pgpsync.desktop b/install/pgpsync.desktop deleted file mode 100644 index 83503b8..0000000 --- a/install/pgpsync.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Name=PGP Sync -Comment=Keep up with your organization's PGP public keys -Exec=/usr/bin/pgpsync -Terminal=false -Type=Application -Icon=/usr/share/pixmaps/pgpsync.png -Categories=Network; diff --git a/install/pyinstaller-osx.spec b/install/pyinstaller-osx.spec index a723bfb..1db19bb 100644 --- a/install/pyinstaller-osx.spec +++ b/install/pyinstaller-osx.spec @@ -6,7 +6,7 @@ block_cipher = None version = open('share/version').read().strip().lstrip('v') a = Analysis( - ['pgpsync-osx.py'], + ['gpgsync-osx.py'], pathex=['.'], binaries=None, datas=[('../share/*', 'share')], @@ -26,7 +26,7 @@ exe = EXE( pyz, a.scripts, exclude_binaries=True, - name='pgpsync', + name='gpgsync', debug=False, strip=False, upx=True, @@ -39,13 +39,13 @@ coll = COLLECT( a.datas, strip=False, upx=True, - name='pgpsync') + name='gpgsync') app = BUNDLE( coll, - name='PGP Sync.app', - icon='install/pgpsync.icns', - bundle_identifier='org.firstlook.pgpsync', + name='GPG Sync.app', + icon='install/gpgsync.icns', + bundle_identifier='org.firstlook.gpgsync', info_plist={ 'LSUIElement': 'True', 'NSHighResolutionCapable': 'True', diff --git a/setup.py b/setup.py index ddb95de..0ad849c 100644 --- a/setup.py +++ b/setup.py @@ -11,12 +11,12 @@ version_file = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'share', 'version') version = open(version_file).read().strip().lstrip('v') -description = "PGP Sync lets users have up-to-date public keys for all other members of their organization." +description = "GPG Sync lets users have up-to-date public keys for all other members of their organization." -long_description = description + " " + "If you're part of an organization that uses PGP internally you might notice that it doesn't scale well. New people join and create new keys and existing people revoke their old keys and transition to new ones. It quickly becomes unwieldy to ensure that everyone has a copy of everyone else's current key, and that old revoked keys get refreshed to prevent users from accidentally using them." +long_description = description + " " + "If you're part of an organization that uses GPG internally you might notice that it doesn't scale well. New people join and create new keys and existing people revoke their old keys and transition to new ones. It quickly becomes unwieldy to ensure that everyone has a copy of everyone else's current key, and that old revoked keys get refreshed to prevent users from accidentally using them." share_files = [ - 'share/pgpsync.png', + 'share/gpgsync.png', 'share/syncing.png', 'share/error.png', 'share/loading.gif', @@ -27,20 +27,20 @@ if system == 'Linux': setup( - name='pgpsync', + name='gpgsync', version=version, description=description, long_description=long_description, author='Micah Lee', author_email='micah.lee@theintercept.com', - url='https://github.com/firstlook/pgpsync', + url='https://github.com/firstlook/gpgsync', license="GPL v3", - keywords='pgpsync, pgp, gpg, gnupg', - packages=['pgpsync'], - scripts=['install/pgpsync'], + keywords='gpgsync, pgp, openpgp, gpg, gnupg', + packages=['gpgsync'], + scripts=['install/gpgsync'], data_files=[ - (os.path.join(sys.prefix, 'share/applications'), ['install/pgpsync.desktop']), - (os.path.join(sys.prefix, 'share/pixmaps'), ['share/pgpsync.png']), - (os.path.join(sys.prefix, 'share/pgpsync/'), share_files + ['install/pgpsync.desktop']) + (os.path.join(sys.prefix, 'share/applications'), ['install/gpgsync.desktop']), + (os.path.join(sys.prefix, 'share/pixmaps'), ['share/gpgsync.png']), + (os.path.join(sys.prefix, 'share/gpgsync/'), share_files + ['install/gpgsync.desktop']) ] ) diff --git a/share/pgpsync.png b/share/gpgsync.png similarity index 100% rename from share/pgpsync.png rename to share/gpgsync.png diff --git a/share/org.firstlook.pgpsync.plist b/share/org.firstlook.gpgsync.plist similarity index 100% rename from share/org.firstlook.pgpsync.plist rename to share/org.firstlook.gpgsync.plist diff --git a/stdeb.cfg b/stdeb.cfg index 13d7447..79d48b0 100644 --- a/stdeb.cfg +++ b/stdeb.cfg @@ -1,4 +1,4 @@ [DEFAULT] -Package3: pgpsync +Package3: gpgsync Depends3: python3-pyqt5, python3-requests, python3-socks, gnupg2 Build-Depends3: python3-stdeb, python3-nose diff --git a/test/common_test.py b/test/common_test.py index 45d1af2..9d35e3a 100644 --- a/test/common_test.py +++ b/test/common_test.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- from nose import with_setup -from pgpsync import common +from gpgsync import common def test_valid_fp(): assert common.valid_fp(b'734F 6E70 7434 ECA6 C007 E1AE 82BD 6C96 16DA BB79') diff --git a/test/endpoint_test.py b/test/endpoint_test.py index 7d8d283..11287ac 100644 --- a/test/endpoint_test.py +++ b/test/endpoint_test.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- from nose import with_setup from nose.tools import raises -from pgpsync import * +from gpgsync import * from .test_helpers import * diff --git a/test/gnupg_test.py b/test/gnupg_test.py index 964372f..f08a2d8 100644 --- a/test/gnupg_test.py +++ b/test/gnupg_test.py @@ -1,8 +1,8 @@ # -*- coding: utf-8 -*- from nose import with_setup from nose.tools import raises -from pgpsync import * -from pgpsync.gnupg import * +from gpgsync import * +from gpgsync.gnupg import * from .test_helpers import * diff --git a/test/status_bar_test.py b/test/status_bar_test.py index e869be8..9f8ceca 100644 --- a/test/status_bar_test.py +++ b/test/status_bar_test.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- from nose import with_setup -from pgpsync import StatusBar, MessageQueue +from gpgsync import StatusBar, MessageQueue def test_status_bar_show_loading_animation(): status_bar = StatusBar()