diff --git a/appveyor.yml b/appveyor.yml
index 0a97c0aa937848b5fb00e9ebbf156746f26f159e..fc9ce0ce6dc0c51ec3d1afa84e54e64c5a9bb5fd 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -4,38 +4,46 @@ environment:
 
     - PYTHON: "C:\\Python34"
 
+branches:
+  only:
+    - master
+
+clone_depth: 1
 
 install:
 
-  - hg clone http://hg.gajim.org/gajim-plugins c:\projects\gajim-plugins
-  - hg clone http://hg.gajim.org/python-nbxmpp c:\projects\python-nbxmpp
+  - git clone --depth=1 --branch=gtk3 https://dev.gajim.org/gajim/gajim-plugins.git c:\projects\gajim-plugins
+  - git clone https://dev.gajim.org/gajim/python-nbxmpp.git c:\projects\python-nbxmpp
   - cd c:\\projects\\python-nbxmpp\\
-  - python setup.py install
+  - "%PYTHON%\\python.exe setup.py install"
   - ps: c:\\projects\\gajim\\download.ps1
   - set PATH=C:\\MinGW\\bin;C:\\Program Files (x86)\\gettext-iconv\\bin;%PATH%
   - "%PYTHON%\\python.exe -m pip install --upgrade pip"
   - "%PYTHON%\\python.exe -m pip install protobuf"
   - ps: Add-Content C:\Python34\Lib\site-packages\google\__init__.py " "
-  - "%PYTHON%\\python.exe -m pip install pycrypto"
+  - "%PYTHON%\\python.exe -m pip install pycryptodome"
   - "%PYTHON%\\python.exe -m pip install cx_freeze"
   - "%PYTHON%\\python.exe -m pip install pypiwin32"
   - "%PYTHON%\\python.exe -m pip install pyopenssl"
-  - "%PYTHON%\\python.exe -m pip install --global-option=build_ext --global-option --compiler=mingw32 python-axolotl"
+  - "%PYTHON%\\python.exe -m pip install --no-dependencies python-axolotl"
+  - "%PYTHON%\\python.exe -m pip install --global-option=build_ext --global-option --compiler=mingw32 python-axolotl-curve25519"
   - cd c:\\projects\\gajim\\
-  - build.bat
-  
+  - xcopy . ..\gajim_built /e /i
+  - cd ..
+  - cd gajim_built
+  - xcopy ..\gajim-plugins\plugin_installer plugins\plugin_installer /e /i
 
-build: off
+  - cmd: for %%l in (po\*.po) do mkdir po\%%~nl & mkdir po\%%~nl\LC_MESSAGES & msgfmt -o po\%%~nl\LC_MESSAGES\gajim.mo %%l
 
-# artifacts:
-#   - path: gajim_built\Gajim.exe
-#   - name: MyApp
+  - "%PYTHON%\\python.exe setup_win32.py build_exe"
+  - move build\exe.win32-3.4 .
+  - rmdir build
+  - rename exe.win32-3.4 build
 
-on_finish:
-  - ps: Push-AppveyorArtifact gajim_built\Gajim.exe -FileName "Gajim-16.10.1-$($env:APPVEYOR_REPO_COMMIT).exe"
+  - ps: '& "C:\Program Files (x86)\NSIS\makensis.exe" gajim.nsi'
+  
 
+build: off
 
-#on_success:
-#  You can use this step to upload your artifacts to a public website.
-#  See Appveyor's documentation for more details. Or you can simply
-#  access your wheels from the Appveyor "artifacts" tab for your build.
\ No newline at end of file
+on_finish:
+  - ps: Push-AppveyorArtifact Gajim.exe -FileName "Gajim-16.10.1-$($env:APPVEYOR_REPO_COMMIT).exe"
\ No newline at end of file
diff --git a/build.bat b/build.bat
index 83027adfe0de5974f4211e336b9663d191bd448b..7b4578fd23c3b239be1a77aba769abeff6e165d0 100644
--- a/build.bat
+++ b/build.bat
@@ -1,25 +1,26 @@
-rmdir /S /Q gajim_built
+rmdir /S /Q ..\gajim_built
 
-mkdir gajim_built
-hg archive gajim_built
-xcopy ..\gajim-plugins\plugin_installer gajim_built\plugins\plugin_installer /e /i
+xcopy . ..\gajim_built /e /i
+cd ..
+cd gajim_built
+
+xcopy ..\gajim-plugins\plugin_installer plugins\plugin_installer /e /i
 
 rem copy C:\Python34\Lib\site-packages\gnome\msgfmt.exe gajim_built
 rem copy C:\Windows\System32\msvcr100.dll gajim_built
 
-cd gajim_built
-
 for %%l in (po\*.po) do mkdir po\%%~nl & mkdir po\%%~nl\LC_MESSAGES & msgfmt -o po\%%~nl\LC_MESSAGES\gajim.mo %%l
 
-c:\python34\python.exe setup_win32.py build_exe
+"c:\python34\python.exe" setup_win32.py build_exe
 
 move build\exe.win32-3.4 .
 rmdir build
 rename exe.win32-3.4 build
 
-rem REM for snarl plugin
 rem xcopy ..\win32com build\win32com /e /i
 
 "C:\Program Files (x86)\NSIS\makensis" gajim.nsi
 
-cd ..
\ No newline at end of file
+cd ..
+
+pause
\ No newline at end of file
diff --git a/download.ps1 b/download.ps1
index b5a4eeefac850974289f1c47cdf48e243cc7acc3..41e6befd29786c39ed942cb197d48f0b071fb5b9 100644
--- a/download.ps1
+++ b/download.ps1
@@ -1,6 +1,6 @@
 # Download the file to a specific location
 $clnt = new-object System.Net.WebClient
-$url = "http://www.funkroom.net/files/site-packages.zip"
+$url = "https://gajim.org/downloads/snap/win/build/site-packages.zip"
 $file = "c:\site-packages.zip"
 $clnt.DownloadFile($url,$file)
 
diff --git a/setup_win32.py b/setup_win32.py
index 576b2033e0500e1b317e4f7add69bfba94e63e3e..472bcb9ebf100931ebcdf1259769f1a59d3b4ef8 100644
--- a/setup_win32.py
+++ b/setup_win32.py
@@ -94,15 +94,6 @@ GTK_LIBS = {
               'gupnp-dlna-2.0', 'icons', 'ssl', 'themes', 'xml']
 }
 
-
-# share 'gobject-introspection-1.0'
-# , 'enchant' 'gir-1.0',
-
-
-#lib 'gobject-introspection'
-# 'aspell-0.60', 'enchant',  'gst-plugins-bad',
-
-
 # Create the list of includes as cx_freeze likes
 INCLUDE_FILES = []
 for dll in MISSING_DLL:
@@ -124,18 +115,13 @@ for language in next(os.walk('po'))[1]:
 
 OPTIONS = {
     'build_exe': {
-        'compressed': False,
-        'includes': ['gi', 'Crypto.PublicKey.DSA', 'Crypto.Hash.HMAC',
-                     'numbers', 'win32com.client', 'win32com.server',
-                     'cryptography', 'pkg_resources'],
+        'includes': ['gi', 'numbers', 'win32com.client', 'win32com.server'],
         'packages': ['gi', 'cffi', 'cryptography', 'google', 'axolotl',
-                     'pkg_resources'],
-        'base': 'Win32GUI',
+                     'pkg_resources', 'Crypto', 'pycparser'],
         'include_files': INCLUDE_FILES,
     }
 }
 
-
 setup(
     name='Gajim',
     version='0.16.10',
@@ -145,5 +131,6 @@ setup(
     download_url='http://gajim.org/downloads.php',
     license='GPL',
     options=OPTIONS,
-    executables=[Executable('src/gajim.py', icon='data/pixmaps/gajim.ico')],
+    executables=[Executable('src/gajim.py', icon='data/pixmaps/gajim.ico',
+                            base='Win32GUI')],
 )
diff --git a/src/gajim.py b/src/gajim.py
index 53043294994086018168fa09a7c7a199c340d8ca..bb733dfa7a0bdef405c21f61d8e8c94c4fcc2417 100644
--- a/src/gajim.py
+++ b/src/gajim.py
@@ -498,7 +498,7 @@ atexit.register(on_exit)
 
 from gui_interface import Interface
 
-if __name__ == '__main__':
+if __name__.endswith('__main__'):
     def sigint_cb(num, stack):
         sys.exit(5)
     # ^C exits the application normally to delete pid file