/relevation/trunk/relevation.py |
---|
13,6 → 13,8 |
-> http://web.archive.org/http://oss.wired-networks.net/bugzilla/show_bug.cgi?id=111 |
(ref3) http://docs.python.org/library/zlib.html |
(ref4) http://pymotw.com/2/getpass/ |
$Id$ |
""" |
# Relevation Password Printer |
# |
70,7 → 72,7 |
__author__ = 'Toni Corvera' |
__date__ = '$Date$' |
__revision__ = '$Rev$' |
__version_info__ = ( 1, 2 ) #, 0 ) |
__version_info__ = ( 1, 2 , 1 ) # Note: For x.y.0, only x and y are kept |
__version__ = '.'.join(map(str, __version_info__)) |
RELEASE=True |
/relevation/trunk/debian/changelog |
---|
1,3 → 1,9 |
relevation (1.2.1-pon.1) unstable; urgency=low |
* New version |
-- Toni Corvera <outlyer@gmail.com> Tue, 05 Nov 2013 00:45:24 +0100 |
relevation (1.2-pon.1) unstable; urgency=low |
* New version |
/relevation/trunk/relevation.spec.in |
---|
0,0 → 1,72 |
Summary: Command-line search for Revelation Password Manager files |
Name: relevation |
Version: @VERSION@ |
Release: 1.pon%{?dist} |
License: BSD |
Packager: @PACKAGER@ |
Group: Applications/Text |
URL: http://p.outlyer.net/relevation/ |
Source: http://p.outlyer.net/relevation/files/relevation-%{version}.tar.gz |
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root |
BuildArch: noarch |
Requires: libxml2-python |
Requires: python-crypto |
Requires: python-lxml |
%description |
Relevation is a tool to retrieve passwords stored in a password file in the |
format used by Revelation, from the command-line instead of through a GUI. |
%prep |
%setup -q |
%build |
%install |
rm -rf %{buildroot} |
make install prefix=%{_prefix} DESTDIR=%{buildroot} |
# We include the extra tools as %%doc, remove from here |
rm -rf %{buildroot}%{_prefix}/share/doc/relevation/extra/ |
%clean |
rm -rf %{buildroot} |
%files |
%defattr(-,root,root,-) |
%doc CHANGELOG LICENSE |
%doc gui.py devtools/*.py |
%{_bindir}/relevation |
%{_mandir}/man1/relevation.1* |
%changelog |
* Wed Oct 30 2013 Toni Corvera <outlyer@gmail.com> 1.2.1-1.pon |
- Integrated spec from Fedora into upstream source |
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-6 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild |
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-5 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild |
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-4 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild |
* Thu Mar 29 2012 Matthias Saou <matthias@saou.eu> 1.1-3 |
- Add missing python-lxml requirement (#807335). |
* Mon Mar 26 2012 Matthias Saou <matthias@saou.eu> 1.1-2 |
- Fix URL vs. email in spec changelog. |
* Mon Jul 18 2011 Matthias Saou <matthias@saou.eu> 1.1-1 |
- Update to 1.1. |
- New extra tools, remove the "make install"ed ones, include them as %%doc. |
* Mon Jul 4 2011 Matthias Saou <matthias@saou.eu> 1.0-1 |
- Initial RPM release. |
/relevation/trunk/CHANGELOG |
---|
1,5 → 1,11 |
$Date$ |
1.2.1 (?): |
- Minimal GUI Fixes: |
- Updated to the changes in 1.2 |
- Handle lack of matches gracefully |
- Integrated specfile from Fedora Rawhide |
1.2 (2013-10-21): |
- Bugfix: Make case-insensitive search work on uppercase search |
strings |
/relevation/trunk/GNUmakefile |
---|
6,6 → 6,10 |
PKG=relevation |
VERSION=$(shell printf 'import relevation\nprint relevation.__version__' | python - && $(RM) $(PKG).pyc) |
PKGVER=$(PKG)-$(VERSION) |
PACKAGER:=$(shell finger -lp `echo $USER` 2>/dev/null | head -n1 | cut -d: -f3) |
ifeq ($(PACKAGER),) |
PACKAGER:=$(shell getent passwd "`id -un`" | cut -d: -f5 | cut -d, -f1) |
endif |
INSTALLROOT=$(DESTDIR)$(prefix) |
MANROOT=$(INSTALLROOT)/share/man |
16,11 → 20,11 |
docbook-to-man manpage.sgml | nroff -man | less |
clean: |
-$(RM) *.pyc *.pyo manpage.html manpage.pdf |
-$(RM) *.pyc *.pyo manpage.html manpage.pdf $(PKG).spec |
distclean: clean |
-$(RM) $(PKGVER).tar.gz $(PKGVER).zip |
-$(RM) -r dist build |
-$(RM) -r dist build $(PKGVER)/ |
install: |
install -D -m755 $(PKG).py $(INSTALLROOT)/bin/$(PKG) |
64,13 → 68,20 |
dist: $(PKGVER).tar.gz $(PKGVER).zip |
-$(RM) -r $(PKGVER) |
$(PKGVER).tar.gz: is_release distclean package_copy |
$(PKGVER).tar.gz: is_release distclean $(PKG).spec package_copy |
tar cv $(PKGVER) | gzip -c9 > $(PKGVER).tar.gz |
zip: $(PKGVER).zip |
$(PKGVER).zip: is_release distclean manpage.pdf manpage.html package_copy |
$(PKGVER).zip: is_release distclean manpage.pdf manpage.html $(PKG).spec package_copy |
zip -9 -r $(PKGVER).zip $(PKGVER) |
$(PKG).spec: $(PKG).spec.in |
test -n "$(VERSION)" # Version (=$(VERSION)) must be defined |
@echo "[creating $@]" |
@cat "$<" | sed -e 's/@VERSION@/$(VERSION)/g' \ |
-e 's/@PACKAGER@/$(PACKAGER)/g' > "$@" |
exe: |
python setup_py2exe.py py2exe |
/relevation/trunk/gui.py |
---|
7,11 → 7,13 |
Simplistic Graphical User Interface. |
This GUI is mainly intended to be used in systems where command-lines |
are less common, like Widows. |
are less common, like Windows. |
$Id$ |
""" |
# Relevation Password Printer |
# |
# Copyright (c) 2011, Toni Corvera |
# Copyright (c) 2011, 2013, Toni Corvera |
# All rights reserved. |
# |
# Redistribution and use in source and binary forms, with or without |
38,18 → 40,28 |
import sys |
import re |
import Tkinter as tk |
from Tkinter import Frame, Button, Entry, Listbox, Scrollbar, Label |
from Tkinter import Frame, Button, Entry, Listbox, Scrollbar, Label, Radiobutton, StringVar |
import relevation |
__author__ = 'Toni Corvera' |
__date__ = '$Date$' |
__revision__ = '$Rev$' |
__version_info__ = ( 1, 2, 1 ) |
__version__ = '.'.join(map(str, __version_info__)) |
old_fn = relevation.dump_result |
def append_result(s): |
def append_result(typeName, name, descr, notes, fields): |
global gui |
fields = s.split('\n') |
name = fields[2] |
name = re.sub('^Name: ', '', name) |
gui.lst.insert(tk.END, name) |
s = '\n' |
s += 'Type: %s\n' % typeName |
s += 'Name: %s\n' % name |
s += 'Description: %s\n' % descr |
s += 'Notes: %s\n' % notes |
for field in fields: |
s += '%s %s\n' % field |
gui.items.append(s) |
def dump_result_override(res, query_desc): |
79,7 → 91,23 |
global rootw |
search = self.search_text.get() |
self.lst.delete(0, tk.END) |
relevation.main(sys.argv[1:] + ['-s', search]) |
self.items = [] |
mode = '-O' |
args = sys.argv[1:] + [ '-s', ] |
if self.mode.get() == relevation.MODE_AND: |
mode = '-A' |
search = search.split(' ') |
args += search |
args += [ mode, ] |
else: |
args += [ search, mode ] |
print args |
try: |
relevation.main(args) |
except SystemExit: |
# No matches -> Exit with 80 |
gui.lst.insert(tk.END, '<No matches>') |
self.items.append('<No passwords matched search>') |
def display(self): |
global rootw |
95,7 → 123,7 |
def __init__(self, master=None): |
self.master = master |
frame = Frame(master) |
frame.pack() |
frame.pack(expand=1, fill=tk.BOTH) |
self.items = [] |
self.frame = frame |
#top = master |
109,15 → 137,15 |
def ignoreme(s): |
pass |
relevation.printe = ignoreme |
relevation.printen = ignoreme |
FILL = tk.N+tk.S+tk.E+tk.W |
BTNROW = 2 |
BTNROW = 3 |
MODEROW = 2 |
RESROW = 1 |
# Populate |
self.search_text = Entry(self.frame) |
#self.search_text.pack({'expand': 1, 'side': 'top'}) |
self.search_text.grid(row=0, column=0, columnspan=4, padx=5, sticky=FILL) |
self.search_text.grid(row=0, column=0, columnspan=4, padx=5, sticky=tk.N+tk.E+tk.W) |
self.search_text.bind('<Return>', lambda event: self.do_find()) |
self.quit = Button(self.frame, text='Quit', fg='red', command=frame.quit) |
128,6 → 156,16 |
#self.search.pack(side=tk.RIGHT) |
self.search.grid(row=BTNROW, column=2, padx=5) |
self.mode = StringVar() |
mode = relevation.load_config()[2] |
self.mode.set(mode) |
rbO = Radiobutton(self.frame, text="OR/Literal", variable=self.mode, value=relevation.MODE_OR) |
rbA = Radiobutton(self.frame, text="AND", variable=self.mode, value=relevation.MODE_AND) |
rbO.grid(row=MODEROW, column=0) |
rbA.grid(row=MODEROW, column=1) |
self.view = Button(self.frame, text='View', command=self.display) |
#self.view.pack(side=tk.RIGHT) |
self.view.grid(row=BTNROW, column=1) |
148,9 → 186,9 |
if __name__ == '__main__': |
rootw = tk.Tk() |
rootw.title('Relevation search') |
rootw.title('Relevation search v' + __version__) |
gui = GUI(master=rootw) |
rootw.mainloop() |
rootw.destroy() |
#rootw.destroy() |
# vim:set ts=4 et ai fileencoding=utf-8: # |
Property changes: |
Added: svn:keywords |
+Rev Id Date |
\ No newline at end of property |
/relevation/trunk/. |
---|
Property changes: |
Added: svn:ignore |
+relevation.spec |
+ |
Modified: svn:mergeinfo |
Merged /relevation/branches/1.2.1:r242-252 |