pybitmessage.spec
1 Name: pybitmessage 2 Version: 0.6.0 3 Release: 1%{?dist} 4 Summary: Send encrypted messages 5 License: MIT 6 URL: https://github.com/Bitmessage/PyBitmessage 7 Packager: Bob Mottram (4096 bits) <bob@robotics.uk.to> 8 Source0: http://yourdomainname.com/src/%{name}_%{version}.orig.tar.gz 9 BuildArch: noarch 10 Group: Office/Email 11 12 Requires: python, PyQt4, openssl-compat-bitcoin-libs, gst123 13 14 15 %description 16 Bitmessage is a P2P communications protocol used to send encrypted messages 17 to another person or to many subscribers. It is decentralized and 18 trustless, meaning that you need-not inherently trust any entities like 19 root certificate authorities. It uses strong authentication which means 20 that the sender of a message cannot be spoofed, and it aims to hide 21 "non-content" data, like the sender and receiver of messages, from passive 22 eavesdroppers like those running warrantless wiretapping programs. 23 24 %prep 25 %setup -q 26 27 %build 28 %configure 29 make %{?_smp_mflags} 30 31 %install 32 rm -rf %{buildroot} 33 mkdir -p %{buildroot} 34 mkdir -p %{buildroot}/etc 35 mkdir -p %{buildroot}/etc/%{name} 36 mkdir -p %{buildroot}/usr 37 mkdir -p %{buildroot}/usr/bin 38 mkdir -p %{buildroot}/usr/share 39 mkdir -p %{buildroot}/usr/share/man 40 mkdir -p %{buildroot}/usr/share/man/man1 41 mkdir -p %{buildroot}/usr/share/%{name} 42 mkdir -p %{buildroot}/usr/share/applications 43 mkdir -p %{buildroot}/usr/share/icons 44 mkdir -p %{buildroot}/usr/share/icons/hicolor 45 mkdir -p %{buildroot}/usr/share/icons/hicolor/24x24 46 mkdir -p %{buildroot}/usr/share/icons/hicolor/24x24/apps 47 48 mkdir -p %{buildroot}/usr/share/pixmaps 49 mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable 50 mkdir -p %{buildroot}/usr/share/icons/hicolor/scalable/apps 51 # Make install but to the RPM BUILDROOT directory 52 make install -B DESTDIR=%{buildroot} PREFIX=/usr 53 54 %files 55 %doc README.md LICENSE 56 %defattr(-,root,root,-) 57 %dir /usr/share/%{name} 58 %dir /usr/share/applications 59 %dir /usr/share/icons/hicolor 60 %dir /usr/share/icons/hicolor/24x24 61 %dir /usr/share/icons/hicolor/24x24/apps 62 %dir /usr/share/pixmaps 63 %dir /usr/share/icons/hicolor/scalable 64 %dir /usr/share/icons/hicolor/scalable/apps 65 /usr/share/%{name}/* 66 %{_bindir}/* 67 %{_mandir}/man1/* 68 %attr(644,root,root) /usr/share/applications/%{name}.desktop 69 %attr(644,root,root) /usr/share/icons/hicolor/24x24/apps/%{name}.png 70 71 %changelog 72 * Sun Nov 2 2014 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.4.4-1 73 - Added ability to limit network transfer rate 74 - Updated to Protocol Version 3 75 - Removed use of memoryview so that we can support python 2.7.3 76 - Make use of l10n for localizations 77 78 * Thu Mar 6 2014 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.4.3-1 79 - Support pyelliptic's updated HMAC algorithm. We'll remove support for the old method after an upgrade period. 80 - Improved version check 81 - Refactored decodeBase58 function 82 - Ignore duplicate messages 83 - Added bytes received/sent counts and rate on the network information tab 84 - Fix unicode handling in 'View HTML code as formatted text' 85 - Refactor handling of packet headers 86 - Use pointMult function instead of arithmetic.privtopub since it is faster 87 - Fixed issue where client wasn't waiting for a verack before continuing on with the conversation 88 - Fixed CPU hogging by implementing tab-based refresh improvements 89 - Added curses interface 90 - Added support for IPv6 91 - Added a 'trustedpeer' option to keys.dat 92 - Limit maximum object size to 20 MB 93 - Support email-like > quote characters and reply-below-quote 94 - Added Japanese and Dutch language files; updated Norwegian and Russian languages files 95 96 * Thu Mar 6 2014 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.4.2-1 97 - Exclude debian directory from orig.tar.gz 98 - Added Norwegian, Chinese, and Arabic translations 99 - sock.sendall function isn't atomic. 100 Let sendDataThread be the only thread which sends data. 101 - Moved API code to api.py 102 - Populate comboBoxSendFrom when replying 103 - Added option to show recent broadcasts when subscribing 104 - Fixed issue: If Windows username contained an international character, 105 Bitmessage wouldn't start 106 - Added some code for FreeBSD compatibility 107 - Moved responsibility for processing network objects 108 to the new ObjectProcessorThread 109 - Refactored main QT module 110 Moved popup menus initialization to separate methods 111 Simplified inbox loading 112 Moved magic strings to the model scope constants so they won't 113 be created every time. 114 - Updated list of defaultKnownNodes 115 - Fixed issue: [Linux] When too many messages arrive too quickly, 116 exception occurs: "Exceeded maximum number of notifications" 117 - Fixed issue: creating then deleting an Address in short time crashes 118 class_singleWorker.py 119 - Refactored code which displays messages to improve code readability 120 - load "Sent To" label from subscriptions if available 121 - Removed code to add chans to our address book as it is no longer necessary 122 - Added identicons 123 - Modified addresses.decodeAddress so that API command decodeAddress 124 works properly 125 - Added API commands createChan, joinChan, leaveChan, deleteAddress 126 - In pyelliptic, check the return value of RAND_bytes to make sure enough 127 random data was generated 128 - Don't store messages in UI table (and thus in memory), pull from SQL 129 inventory as needed 130 - Fix typos in API commands addSubscription and getInboxMessagesByAddress 131 - Add feature in settings menu to give up resending a message after a 132 specified period of time 133 134 * Sun Sep 29 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.4.1-1 135 - Fixed whitelist bug 136 - Fixed chan bug 137 Added addressversion field to pubkeys table 138 Sending messages to a chan no longer uses anything in the pubkeys table 139 Sending messages to yourself is now fully supported 140 - Change _verifyAddress function to support v4 addresses 141 142 * Sat Sep 28 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.4.0-1 143 - Raised default demanded difficulty from 1 to 2 for new addresses 144 - Added v4 addresses: 145 pubkeys are now encrypted and tagged in the inventory 146 - Use locks when accessing dictionary inventory 147 - Refactored the way inv and addr messages are shared 148 - Give user feedback when disk is full 149 - Added chan true/false to listAddresses results 150 - When replying using chan address, send to whole chan not just sender 151 - Refactored of the way PyBitmessage looks for interesting new objects 152 in large inv messages from peers 153 - Show inventory lookup rate on Network Status tab 154 - Added SqlBulkExecute class 155 so we can update inventory with only one commit 156 - Updated Russian translations 157 - Move duplicated SQL code into helper 158 - Allow specification of alternate settings dir 159 via BITMESSAGE_HOME environment variable 160 - Removed use of gevent. Removed class_bgWorker.py 161 - Added Sip and PyQt to includes in build_osx.py 162 - Show number of each message type processed 163 in the API command clientStatus 164 - Use fast PoW 165 unless we're explicitly a frozen (binary) version of the code 166 - Enable user-set localization in settings 167 - Fix Archlinux package creation 168 - Fallback to language only localization when region doesn't match 169 - Fixed brew install instructions 170 - Added German translation 171 - Made inbox and sent messages table panels read-only 172 - Allow inbox and sent preview panels to resize 173 - Count RE: as a reply header, just like Re: so we don't chain Re: RE: 174 - Fix for traceback on OSX 175 - Added backend ability to understand shorter addresses 176 - Convert 'API Error' to raise APIError() 177 - Added option in settings to allow sending to a mobile device 178 (app not yet done) 179 - Added ability to start daemon mode when using Bitmessage as a module 180 - Improved the way client detects locale 181 - Added API commands: 182 getInboxMessageIds, getSentMessageIds, listAddressBookEntries, 183 trashSentMessageByAckData, addAddressBookEntry, 184 deleteAddressBookEntry, listAddresses2, listSubscriptions 185 - Set a maximum frequency for playing sounds 186 - Show Invalid Method error in same format as other API errors 187 - Update status of separate broadcasts separately 188 even if the sent data is identical 189 - Added Namecoin integration 190 - Internally distinguish peers by IP and port 191 - Inbox message retrieval API 192 functions now also returns read status 193 194 * Mon Jul 29 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.5-1 195 - Inbox message retrieval API functions now also returns read status 196 - Added right-click option to mark a message as unread 197 - Prompt user to connect at first startup 198 - Install into /usr/local by default 199 - Add a missing rm -f to the uninstall task. 200 - Use system text color for enabled addresses instead of black 201 - Added support for Chans 202 - Start storing msgid in sent table 203 - Optionally play sounds on connection/disconnection or when messages arrive 204 - Adding configuration option to listen for connections when using SOCKS 205 - Added packaging for multiple distros (Arch, Puppy, Slack, etc.) 206 - Added Russian translation 207 - Added search support in the UI 208 - Added 'make uninstall' 209 - To improve OSX support, use PKCS5_PBKDF2_HMAC_SHA1 210 if PKCS5_PBKDF2_HMAC is unavailable 211 - Added better warnings for OSX users who are using old versions of Python 212 - Repaired debian packaging 213 - Altered Makefile to avoid needing to chase changes 214 - Added logger module 215 - Added bgWorker class for background tasks 216 - Added use of gevent module 217 - On not-Windows: Fix insecure keyfile permissions 218 - Fix 100% CPU usage issue 219 220 * Sun Jun 30 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.4-1 221 - Switched addr, msg, broadcast, and getpubkey message types 222 to 8 byte time. Last remaining type is pubkey. 223 - Added tooltips to show the full subject of messages 224 - Added Maximum Acceptable Difficulty fields in the settings 225 - Send out pubkey immediately after generating deterministic 226 addresses rather than waiting for a request 227 228 * Sat Jun 29 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.3-1 229 - Remove inbox item from GUI when using API command trashMessage 230 - Add missing trailing semicolons to pybitmessage.desktop 231 - Ensure $(DESTDIR)/usr/bin exists 232 - Update Makefile to correct sandbox violations when built 233 via Portage (Gentoo) 234 - Fix message authentication bug 235 236 * Fri Jun 28 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.211-1 237 - Removed multi-core proof of work 238 as the multiprocessing module does not work well with 239 pyinstaller's --onefile option. 240 241 * Mon Jun 03 2013 Bob Mottram (4096 bits) <bob@robotics.uk.to> - 0.3.2-1 242 - Bugfix: Remove remaining references to the old myapp.trayIcon 243 - Refactored message status-related code. API function getStatus 244 now returns one of these strings: notfound, msgqueued, 245 broadcastqueued, broadcastsent, doingpubkeypow, awaitingpubkey, 246 doingmsgpow, msgsent, or ackreceived 247 - Moved proof of work to low-priority multi-threaded child 248 processes 249 - Added menu option to delete all trashed messages 250 - Added inv flooding attack mitigation 251 - On Linux, when selecting Show Bitmessage, do not maximize 252 automatically 253 - Store tray icons in bitmessage_icons_rc.py 254 255 * Sat May 25 2013 Jonathan Warren (4096 bits) <jonathan@bitmessage.org> - 0.3.1-1 256 - Added new API commands: getDeterministicAddress, 257 addSubscription, deleteSubscription 258 - TCP Connection timeout for non-fully-established connections 259 now 20 seconds 260 - Don't update the time we last communicated with a node unless 261 the connection is fully established. This will allow us to 262 forget about active but non-Bitmessage nodes which have made 263 it into our knownNodes file. 264 - Prevent incoming connection flooding from crashing 265 singleListener thread. Client will now only accept one 266 connection per remote node IP 267 - Bugfix: Worker thread crashed when doing a POW to send out 268 a v2 pubkey (bug introduced in 0.3.0) 269 - Wrap all sock.shutdown functions in error handlers 270 - Put all 'commit' commands within SQLLocks 271 - Bugfix: If address book label is blank, Bitmessage wouldn't 272 show message (bug introduced in 0.3.0) 273 - Messaging menu item selects the oldest unread message 274 - Standardize on 'Quit' rather than 'Exit' 275 - [OSX] Try to seek homebrew installation of OpenSSL 276 - Prevent multiple instances of the application from running 277 - Show 'Connected' or 'Connection Lost' indicators 278 - Use only 9 half-open connections on Windows but 32 for 279 everyone else 280 - Added appIndicator (a more functional tray icon) and Ubuntu 281 Messaging Menu integration 282 - Changed Debian install directory and run script name based 283 on Github issue #135 284 285 * Mon May 6 2013 Bob Mottram (4096 bits) <bob@sluggish.dyndns.org> - 0.3.0-1 286 - Added new API function: getStatus 287 - Added error-handling around all sock.sendall() functions 288 in the receiveData thread so that if there is a problem 289 sending data, the threads will close gracefully 290 - Abandoned and removed the connectionsCount data structure; 291 use the connectedHostsList instead because it has proved to be 292 more accurate than trying to maintain the connectionsCount 293 - Added daemon mode. All UI code moved into a module and many 294 shared objects moved into shared.py 295 - Truncate display of very long messages to avoid freezing the UI 296 - Added encrypted broadcasts for v3 addresses or v2 addresses 297 after 2013-05-28 10:00 UTC 298 - No longer self.sock.close() from within receiveDataThreads, 299 let the sendDataThreads do it 300 - Swapped out the v2 announcements subscription address for a v3 301 announcements subscription address 302 - Vacuum the messages.dat file once a month: 303 will greatly reduce the file size 304 - Added a settings table in message.dat 305 - Implemented v3 addresses: 306 pubkey messages must now include two var_ints: nonce_trials_per_byte 307 and extra_bytes, and also be signed. When sending a message to a v3 308 address, the sender must use these values in calculating its POW or 309 else the message will not be accepted by the receiver. 310 - Display a privacy warning when selecting 'Send Broadcast from this address' 311 - Added gitignore file 312 - Added code in preparation for a switch from 32-bit time to 64-bit time. 313 Nodes will now advertise themselves as using protocol version 2. 314 - Don't necessarily delete entries from the inventory after 2.5 days; 315 leave pubkeys there for 28 days so that we don't process the same ones 316 many times throughout a month. This was causing the 'pubkeys processed' 317 indicator on the 'Network Status' tab to not accurately reflect the 318 number of truly new addresses on the network. 319 - Use 32 threads for outgoing connections in order to connect quickly 320 - Fix typo when calling os.environ in the sys.platform=='darwin' case 321 - Allow the cancelling of a message which is in the process of being 322 sent by trashing it then restarting Bitmessage 323 - Bug fix: can't delete address from address book 324 325 * Tue Apr 9 2013 Bob Mottram (4096 bits) <bob@sluggish.dyndns.org> - 0.2.8-1 326 - Fixed Ubuntu & OS X issue: 327 Bitmessage wouldn't receive any objects from peers after restart. 328 - Inventory flush to disk when exiting program now vastly faster. 329 - Fixed address generation bug (kept Bitmessage from restarting). 330 - Improve deserialization of messages 331 before processing (a 'best practice'). 332 - Change to help Macs find OpenSSL the way Unix systems find it. 333 - Do not share or accept IPs which are in the private IP ranges. 334 - Added time-fuzzing 335 to the embedded time in pubkey and getpubkey messages. 336 - Added a knownNodes lock 337 to prevent an exception from sometimes occurring when saving 338 the data-structure to disk. 339 - Show unread messages in bold 340 and do not display new messages automatically. 341 - Support selecting multiple items 342 in the inbox, sent box, and address book. 343 - Use delete key to trash Inbox or Sent messages. 344 - Display richtext(HTML) messages 345 from senders in address book or subscriptions (although not 346 pseudo-mailing-lists; use new right-click option). 347 - Trim spaces 348 from the beginning and end of addresses when adding to 349 address book, subscriptions, and blacklist. 350 - Improved the display of the time for foreign language users. 351 352 * Mon Apr 1 2013 Bob Mottram (4096 bits) <bob@sluggish.dyndns.org> - 0.2.7-1 353 - Added debian packaging 354 - Script to generate debian packages 355 - SVG icon for Gnome shell, etc 356 - Source moved int src directory for debian standards compatibility 357 - Trailing carriage return on COPYING LICENSE and README.md