Skip to content

Commit

Permalink
Initial import
Browse files Browse the repository at this point in the history
  • Loading branch information
juga0 committed Dec 17, 2017
0 parents commit b26d0ed
Show file tree
Hide file tree
Showing 44 changed files with 2,706 additions and 0 deletions.
18 changes: 18 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# this should work for all editors that support .editorconfig!
#
# on debian, emacs users should install elpa-editorconfig and vim
# users should install vim-editorconfig.

root = true

[*]
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
end_of_line = lf
charset = utf-8
indent_size = 4
max_line_length = 70

[Makefile]
indent_style = tab
11 changes: 11 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
.cache
*~
*.pyc
.*swp
*.egg-info
deb_dist
dist
build/
*__pycache__
.tox
output/
18 changes: 18 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
sudo: required
language: python
dist: trusty
python:
- '3.6'
before_install:
- sudo apt install libgpgme++2 libgpgme11-dev
install:
- pip install -U tox

env:
matrix:
- TESTENV=doc
- TESTENV=py36
- TESTENV=lint

script:
- tox -e $TESTENV tests/
6 changes: 6 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Change Log
===========

0.1.0
------
* Initial import
675 changes: 675 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

16 changes: 16 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
include *.rst
include .editorconfig
include LICENSE
include *.txt
include tox.ini
recursive-include docs *.bat
recursive-include docs *.py
recursive-include docs *.rst
recursive-include docs Makefile
recursive-include docs *.svg
recursive-include docs *.vcf
recursive-include opgpcard *.svg
recursive-include opgpcard *.vcf
recursive-include tests *.py
recursive-include examples *.svg
recursive-include examples *.vcf
78 changes: 78 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
opgpcard - OpenPGP Card
=======================

.. image:: https://badge.fury.io/py/opgpcard.svg
:target: https://badge.fury.io/py/opgpcard
:alt: Latest stable version

.. image:: https://travis-ci.org/juga0/opgpcard.svg?branch=master
:target: https://travis-ci.org/juga0/opgpcard?branch=master
:alt: Travis-CI

Create a VCard, a QR code and/or a printable business cards including
OpenPGP key and fingerprint.

``opgpcard`` is a tool to create a VCard [0] including OpenPGP [1] key
and fingerprint, a QR code [2] of the VCard, a SVG [3] image formatted
as a "business" card [4] to print including the QR code and or a batch
of 10 those "business" cards to print in DIN4.

The idea comes from the Debian pgp-tools [5] ``gpg-key2ps`` script,
which *output a PostScript file which has your Key-ID, UIDs and
fingerprint nicely formatted for printing paper slips to take with you
to a signing-party.*

However the slips do not have the format of a standard "business" card
and they tend to be lost. They also do not include a QR code, quite
useful these days to do not have to type all the OpenPGP fingerprint
characters.

Sadly, most of the Address book [5] applications out there, do not
implement the VCard properties [6] for OpenPGP, so when the QR code in
these cards is scanned, the Address book application will import the
mail address, but probably will ignore the OpenPGP key and/or
fingerprint.

[0] https://en.wikipedia.org/wiki/VCard

[1] https://en.wikipedia.org/wiki/QR_code

[2] https://en.wikipedia.org/wiki/Pretty_Good_Privacy#OpenPGP

[3] https://en.wikipedia.org/wiki/SVG

[5] https://pgp-tools.alioth.debian.org/

[4] https://en.wikipedia.org/wiki/Business_card

[5] https://en.wikipedia.org/wiki/Address_book#Software_address_book

[6] https://en.wikipedia.org/wiki/VCard#Properties

Installation
------------

See `Installation <install.html>`__

Download
--------

You can download this project in either
`zip <http://github.com/juga0/opgpcard/zipball/master>`__ or
`tar <http://github.com/juga0/opgpcard/tarball/master>`__ formats.

You can also clone the project with Git by running::

git clone https://github.com/juga0/opgpcard

Bugs and features
-----------------

To report a bug or a feature request, please fill in an issue on the
`opgpcard issue tracker <https://github.com/juga0/opgpcard/issues>`__.

License
-------

``opgpcard`` is Copyright 2016, 2017 by juga (juga at riseup dot net)
under the terms of the `GPLv3 <http://www.gnu.org/licenses/>`__ license.
20 changes: 20 additions & 0 deletions docs/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#

# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
SPHINXPROJ = opgpcard
SOURCEDIR = source
BUILDDIR = build

# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
56 changes: 56 additions & 0 deletions docs/build/html/_images/opgpcard_juga.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
60 changes: 60 additions & 0 deletions docs/build/html/_images/opgpcard_juga_DIN4_10.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions docs/build/html/_images/opgpcard_qr_juga.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
36 changes: 36 additions & 0 deletions docs/make.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
@ECHO OFF

pushd %~dp0

REM Command file for Sphinx documentation

if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set SOURCEDIR=source
set BUILDDIR=build
set SPHINXPROJ=opgpcard

if "%1" == "" goto help

%SPHINXBUILD% >NUL 2>NUL
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.http://sphinx-doc.org/
exit /b 1
)

%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
goto end

:help
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%

:end
popd
1 change: 1 addition & 0 deletions docs/source/README.rst
57 changes: 57 additions & 0 deletions docs/source/api.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
opgpcard Python API Reference
==============================

opgpcard package
=================

Submodules
----------

opgpcard\.opgpcard module
-------------------------

.. automodule:: opgpcard.opgpcard
:members:
:undoc-members:
:show-inheritance:

opgpcard\.conf module
-------------------------

.. automodule:: opgpcard.conf
:members:
:undoc-members:
:show-inheritance:

opgpcard\.gpg_utils module
--------------------------

.. automodule:: opgpcard.gpg_utils
:members:
:undoc-members:
:show-inheritance:

opgpcard\.qrsvg module
----------------------------

.. automodule:: opgpcard.qrsvg
:members:
:undoc-members:
:show-inheritance:

opgpcard\.vcard_utils module
-----------------------------

.. automodule:: opgpcard.vcard_utils
:members:
:undoc-members:
:show-inheritance:


Module contents
---------------

.. automodule:: opgpcard
:members:
:undoc-members:
:show-inheritance:
Loading

0 comments on commit b26d0ed

Please sign in to comment.