Somehow forgot to push my windows build script changes in all my blurness last night
authorMaran <maran.hidskes@gmail.com>
Sat, 16 Mar 2013 20:13:55 +0000 (21:13 +0100)
committerMaran <maran.hidskes@gmail.com>
Sat, 16 Mar 2013 20:13:55 +0000 (21:13 +0100)
contrib/build-wine/build-electrum-git.sh
contrib/build-wine/build-electrum.sh
contrib/build-wine/deterministic.spec
contrib/build-wine/electrum.nsis [deleted file]

index bafa227..2abb575 100755 (executable)
@@ -58,7 +58,7 @@ $PYTHON "C:/pyinstaller/pyinstaller.py" --noconfirm --ascii -w --onefile "C:/ele
 $PYTHON "C:/pyinstaller/pyinstaller.py" --noconfirm --ascii -w deterministic.spec
 
 # For building NSIS installer, run:
-wine "$WINEPREFIX/drive_c/Program Files (x86)/NSIS/makensis.exe" electrum.nsis
+wine "$WINEPREFIX/drive_c/Program Files (x86)/NSIS/makensis.exe" electrum.nsi
 #wine $WINEPREFIX/drive_c/Program\ Files\ \(x86\)/NSIS/makensis.exe electrum.nsis
 
 DATE=`date +"%Y%m%d"`
index a54e29a..f4d91d7 100755 (executable)
@@ -40,7 +40,7 @@ $PYTHON "C:/pyinstaller/pyinstaller.py" --noconfirm --ascii -w --onefile "C:/ele
 $PYTHON "C:/pyinstaller/pyinstaller.py" --noconfirm --ascii -w deterministic.spec
 
 # For building NSIS installer, run:
-wine "$WINEPREFIX/drive_c/Program Files (x86)/NSIS/makensis.exe" electrum.nsis
+wine "$WINEPREFIX/drive_c/Program Files (x86)/NSIS/makensis.exe" electrum.nsi
 #wine $WINEPREFIX/drive_c/Program\ Files\ \(x86\)/NSIS/makensis.exe electrum.nsis
 
 cd dist
index 5293cbf..db3eca3 100644 (file)
@@ -1,24 +1,64 @@
 # -*- mode: python -*-\r
-a = Analysis(['C:/electrum/electrum'],\r
-             pathex=['Z:\\electrum-wine'],\r
-             hiddenimports=[],\r
-             excludes=['Tkinter'],\r
+\r
+# We don't put these files in to actually include them in the script but to make the Analysis method scan them for imports\r
+a = Analysis(['electrum', 'gui/gui_classic.py', 'gui/gui_lite.py', 'gui/gui_text.py',\r
+              'lib/util.py', 'lib/wallet.py', 'lib/simple_config.py',\r
+              'lib/bitcoin.py', 'lib/deserialize.py' \r
+              ],\r
+             hiddenimports=["lib","gui"], \r
+             pathex=['lib:gui:plugins'],\r
              hookspath=None)\r
-pyz = PYZ(a.pure, level=0)\r
+\r
+##### include mydir in distribution #######\r
+def extra_datas(mydir):\r
+    def rec_glob(p, files):\r
+        import os\r
+        import glob\r
+        for d in glob.glob(p):\r
+            if os.path.isfile(d):\r
+                files.append(d)\r
+            rec_glob("%s/*" % d, files)\r
+    files = []\r
+    rec_glob("%s/*" % mydir, files)\r
+    extra_datas = []\r
+    for f in files:\r
+        extra_datas.append((f, f, 'DATA'))\r
+\r
+    return extra_datas\r
+###########################################\r
+\r
+# append dirs\r
+\r
+# Theme data\r
+a.datas += extra_datas('data')\r
+\r
+# Localization\r
+a.datas += extra_datas('locale')\r
+\r
+# Py folders that are needed because of the magic import finding\r
+a.datas += extra_datas('gui')\r
+a.datas += extra_datas('lib')\r
+a.datas += extra_datas('plugins')\r
+\r
+pyz = PYZ(a.pure)\r
 exe = EXE(pyz,\r
           a.scripts,\r
           exclude_binaries=1,\r
           name=os.path.join('build\\pyi.win32\\electrum', 'electrum.exe'),\r
-          debug=False,\r
+          debug=True,\r
           strip=None,\r
-          upx=True,\r
-          console=False )\r
+          upx=False,\r
+          icon='icons/electrum.ico',\r
+          console=True)\r
+          # The console True makes an annoying black box pop up, but it does make Electrum accept command line options.\r
+\r
 coll = COLLECT(exe,\r
                a.binaries,\r
                a.zipfiles,\r
                a.datas,\r
                strip=None,\r
                upx=True,\r
+               debug=False,\r
+               icon='icons/electrum.ico',\r
+               console=True,\r
                name=os.path.join('dist', 'electrum'))\r
-app = BUNDLE(coll,\r
-             name=os.path.join('dist', 'electrum.app'))\r
diff --git a/contrib/build-wine/electrum.nsis b/contrib/build-wine/electrum.nsis
deleted file mode 100644 (file)
index 4694555..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-;--------------------------------
-;Include Modern UI
-
-  !include "MUI2.nsh"
-
-;--------------------------------
-;General
-
-  ;Name and file
-  Name "Electrum"
-  OutFile "dist/electrum-setup.exe"
-
-  ;Default installation folder
-  InstallDir "$PROGRAMFILES\Electrum"
-  
-  ;Get installation folder from registry if available
-  InstallDirRegKey HKCU "Software\Electrum" ""
-
-  ;Request application privileges for Windows Vista
-  RequestExecutionLevel admin
-
-;--------------------------------
-;Variables
-
-;--------------------------------
-;Interface Settings
-
-  !define MUI_ABORTWARNING
-
-;--------------------------------
-;Pages
-
-  !insertmacro MUI_PAGE_LICENSE "tmp/LICENCE"
-  ;!insertmacro MUI_PAGE_COMPONENTS
-  !insertmacro MUI_PAGE_DIRECTORY
-  
-  ;Start Menu Folder Page Configuration
-  !define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU" 
-  !define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\Electrum" 
-  !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
-  
-  ;!insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder
-  
-  !insertmacro MUI_PAGE_INSTFILES
-  
-  !insertmacro MUI_UNPAGE_CONFIRM
-  !insertmacro MUI_UNPAGE_INSTFILES
-
-;--------------------------------
-;Languages
-  !insertmacro MUI_LANGUAGE "English"
-
-;--------------------------------
-;Installer Sections
-
-Section
-
-  SetOutPath "$INSTDIR"
-  
-  ;ADD YOUR OWN FILES HERE...
-  file /r dist\electrum\*.*
-  
-  ;Store installation folder
-  WriteRegStr HKCU "Software\Electrum" "" $INSTDIR
-  
-  ;Create uninstaller
-  WriteUninstaller "$INSTDIR\Uninstall.exe"
-
-
-  CreateShortCut "$DESKTOP\Electrum.lnk" "$INSTDIR\electrum.exe" ""
-
-  ;create start-menu items
-  CreateDirectory "$SMPROGRAMS\Electrum"
-  CreateShortCut "$SMPROGRAMS\Electrum\Uninstall.lnk" "$INSTDIR\Uninstall.exe" "" "$INSTDIR\Uninstall.exe" 0
-  CreateShortCut "$SMPROGRAMS\Electrum\Electrum.lnk" "$INSTDIR\electrum.exe" "" "$INSTDIR\electrum.exe" 0
-
-SectionEnd
-
-;--------------------------------
-;Descriptions
-
-  ;Assign language strings to sections
-  ;!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
-  ;  !insertmacro MUI_DESCRIPTION_TEXT ${SecDummy} $(DESC_SecDummy)
-  ;!insertmacro MUI_FUNCTION_DESCRIPTION_END
-;--------------------------------
-;Uninstaller Section
-
-Section "Uninstall"
-
-  ;ADD YOUR OWN FILES HERE...
-  RMDir /r "$INSTDIR\*.*"
-
-  RMDir "$INSTDIR"
-  
-  Delete "$DESKTOP\Electrum.lnk"
-  Delete "$SMPROGRAMS\Electrum\*.*"
-  RmDir  "$SMPROGRAMS\Electrum"
-    
-  DeleteRegKey /ifempty HKCU "Software\Electrum"
-
-SectionEnd