8000 Running wekan as an standalone program on Windows · Issue #883 · wekan/wekan · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Running wekan as an standalone program on Windows #883

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
sinasalek opened this issue Mar 2, 2017 · 21 comments
Closed

Running wekan as an standalone program on Windows #883

sinasalek opened this issue Mar 2, 2017 · 21 comments

Comments

@sinasalek
Copy link
sinasalek commented Mar 2, 2017

As you may know, there isn't any decent client program for kanaban, wekan is a very good candidate. On Linux docker can be used since it does not have much of a overhead and can be installed with few lines of commands. However on windows unfortunately it's quite difficult if not impossible. I opened up this issue the share my work and let anyone interested to join. So i'm trying to run wekan as an standalone windows program with no dependencies (all dependencies included). eventually it can be packaged as an windows installer msi file.

Here is the steps i've taken:

  1. Created a wekan folder
  2. Downloaded the latest version and extracted in bundle folder inside the wekan folder: wekan\bundle
  3. Installed nodejs 0.10.48 from here, copied the installed files to wekan\nodejs
  4. Downloaded the MongoDB portable and extract it as wekan\MongoDBPortable
  5. Created the following windows batch file:
SET MONGO_URL=mongodb://127.0.0.1:27017/wekan
SET ROOT_URL=http://127.0.0.1:8081/
SET MAIL_URL=smtp://user:pass@mailserver.example.com:25/
SET MAIL_FROM=wekan-admin@example.com
SET PORT=8081
MongoDBPortable\MongoDBPortable.exe
cd bundle
..\nodejs\node.exe main.js
pause
  1. Wekan did not run even though i downloaded the binary release.
cd bundle\programs\server
..\..\..\nodejs\npm install

Error (npm-debug.zip) :

Missing win32-x64-v8-3.14\fibers.node

So right now i'm following the new guide suggested by @xet7 to overcome the problem.

@xet7
Copy link
Member
xet7 commented Mar 2, 2017

@entrptaher

How did you get fibers compiled?

@sinasalek
Copy link
Author
sinasalek commented Mar 2, 2017

Ok i succeeded by following the new guide :) also updated it to reflect the few minor issues i encountered.

So now how can i build a binary package out of this to run it on other systems without the build process and all those dependencies?

@sinasalek
Copy link
Author
sinasalek commented Mar 2, 2017

wekan-0.11.1-rc1.tar.gz contains fibres binaries, but when i run wekan i receive the following error, the strange thing is among those binaries there binaries for both Windows x32 and x64 so why is it looking for it on a wrong path? even when i compiled wekan from source, the generated fibres binaries did not contain such a folder!

wekan\bundle\programs\server\node_modules\fibers\fibers.js:16
        throw new Error('`'+ modPath+ '.node` is missing. Try reinstalling `node-fibe
              ^
Error: `wekan\bundle\programs\server\node_modules\fibers\bin\win32-x64-v8-3.14\fibers.node` is missing. Try reinstalling `node-fibers`?
    at Object.<anonymous> (wekan\bundle\programs\server\node_modules\fibers\fibers.js:16:8)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (wekan\bundle\programs\server\boot.js:1:75)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)

I tried copy those binaries to the folder it's looking for but now i receive the following error:

What do you think? is this problem related to wekan or fibres, meteor? my google search so far was not much of a help.

module.js:356
  Module._extensions[extension](this, filename);
                               ^
Error: %1 is not a valid Win32 application.
wekan\bundle\programs\server\node_modules\fibers\bin\win32-x64-v8-3.14\fibers.node
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (wekan\bundle\programs\server\node_modules\fibers\fibers.js:20:37)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

@xet7
Copy link
Member
xet7 commented Mar 2, 2017

@sinasalek

wekan-0.11.1-rc1.tar.gz has been compiled on Linux, I think it does not directly work on Windows.

I'll try to compile Windows version and see if those could be combined, or have Windows
version in .zip file.

@sinasalek
Copy link
Author

I couldn't build x64 binaries for fibres (probably because of dependency issues) but manged to build x32 binaries. i copied them over to fibers/bin and finally got passed the error.
No i'm getting the following error, i search for the windows binary on my recent build from source and copied it over again and the problem fixed. It seems that it's working fine now i'm playing with it to see if there is still any problem.

wekan\bundle\programs\server\node_modules\fibers\future.js:280
                                                throw(ex);
                                                      ^
Error: %1 is not a valid Win32 application.
wekan\bundle\programs\server\npm\node_modules\meteor\npm-bcrypt\node_modules\bcrypt\build\Release\bcrypt_lib.node
    at Module.load (module.js:356:32)
    at Module.Mp.load (wekan\bundle\programs\server\npm\node_modules\meteor\babel-compiler\node_modules\reify\node\runtime.js:16:23)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at bindings (wekan\bundle\programs\server\npm\node_modules\meteor\npm-bcrypt\node_modules\bcrypt\node_modules\bindings\bindings.js:76:44)
    at Object.<anonymous> (wekan\bundle\programs\server\npm\node_modules\meteor\npm-bcrypt\node_modules\bcrypt\bcrypt.js:3:35)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Module.Mp.load (wekan\bundle\programs\server\npm\node_modules\meteor\babel-compiler\node_modules\reify\node\runtime.js:16:23)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.Npm.require (wekan\bundle\programs\server\boot.js:190:18)
    at Package (packages/npm-bcrypt/wrapper.js:1:1)

@sinasalek
Copy link
Author

An official Windows build is highly appreciated, wekan is really good for using as client kanban board and it's very fast.
Here is a hackish way to run it then, i don't like it but it works :

FOR %%A IN (.) DO (
SET CURDIR=%%~dpnA
)
cd %CURDIR%
SET MONGO_URL=mongodb://127.0.0.1:27017/wekan
SET ROOT_URL=http://127.0.0.1:8081/
SET MAIL_URL=smtp://user:pass@mailserver.example.com:25/
SET MAIL_FROM=wekan-admin@example.com
SET PORT=8081
start "" MongoDBPortable\MongoDBPortable.exe
PING 1.1.1.1 -n 1 -w 1000 >NUL
start "" nodejs\node.exe bundle\main.js
PING 1.1.1.1 -n 1 -w 3000 >NUL
ChromiumPortable\ChromiumPortable http://127.0.0.1:8081

@entrptaher
Copy link
Contributor
entrptaher commented Mar 3, 2017

In my case there were node-gyp related issues, so I suggested a visual c++ build, I don't see anything related to visual c++ in your issue details. Still that doesn't solve the actual problem mentioned in the title, right? Let's find out how can we do that.

@sinasalek
Copy link
Author

@entrptaher The new guide worked just fine, i tried it on a fresh Windows 10 Pro and could compile wekan from source and run it on Windows, then i copied the windows binaries for fibres and bcrypt over to the linux binary release to make it run cleanly. However we can't expect every user to spend several hours for just running the application. The problem is there is no windows binary build so everytime we have a new release i have to do the whole process again if the used fibres and bcrypt version changes.

So the next step as @xet7 mentioned is to add Windows to the build process and have a separate zip file for Windows.

@sinasalek
Copy link
Author

@hellectronic
Copy link

Anyone experience with electrifying? This would be awesome!

@chrisafl
Copy link
chrisafl commented Mar 9, 2017

@sinasalek Have you checked out https://dmitryivanov.net/?

It contains "Portable Kanban" and might be able to fulfill your needs.

@sinasalek
Copy link
Author

@chrisafl Yes i did, i tried many different kanaban boards util i decided to use Wekan, that's the reason i said if wekan supports desktop, it can be extremely useful for many people.
Portable Kanban has good set of features but unlike wekan it is not user friendly and difficult to use specially for heavy users such as myself. It does not import from trello, and it is not open source (i could find any) nor cross platform, also it supports only one board!.

I don't have any problem using Wekan on my desktop after i managed to set it up, the experience is great. I run it with single click and it's fast. But it is a very ugly and unmaintainable way of doing it and i will have problem with updates.

@chrisafl
Copy link
chrisafl commented Mar 9, 2017

@sinasalek I agree with all of your points. Additionally, I would love to see an easy to install desktop version of Wekan as well. Thank you for the work you did to get it working and for sharing it with everyone. Hopefully it can end up in a nice MSI package for newbies like me one day.

@emahuni
Copy link
emahuni commented Jul 1, 2017

any news on this?

@xet7
Copy link
Member
xet7 commented Jul 1, 2017

@emahuni

At #1088 somebody already got Wekan running on Windows by installing from source as related git submodule bug got fixed recently, more details about Windows support at https://github.com/wekan/wekan/wiki/Platforms#source-on-windows

So this mainly requires somebody testing is it possible to create standalone Windows package and add related info to wiki. Then I could make releases also as standalone program on Windows.

@xet7
Copy link
Member
xet7 commented Feb 22, 2018

Moved to here from #447

@abdulquadir202

AFAIK newest Docker for Windows and Mac include Docker Compose, and they should be also able to run Linux containers with this docker-compose.yml:
https://github.com/wekan/wekan-mongodb

There has been a lot of Wekan upgrades like Meteor 1.6.0.1 etc that can be seen from Dockerfile:
https://github.com/wekan/wekan/blob/devel/Dockerfile

Anyone having newest Docker for Windows, please test these with Linux and Windows versions of dependencies, and add results about your tests to this issue. Thanks!

@sinasalek
Copy link
Author

I just successfully installed wekan from source on win10 using the guide
I have one minor problem, i run wekan via meteor command, but everytime i run it, it takes about 20 seconds, it seems that running it this way it tries to update the build or something like that, it doesn't run it right away. is there any other of way of running wekan after the installation ?

@xet7
Copy link
Member
xet7 commented May 28, 2018

@sinasalek

Yes, you can convert this bash file to bat file, and run with only node:
https://github.com/wekan/wekan-maintainer/blob/master/virtualbox/start-wekan.sh

@xet7
Copy link
Member
xet7 commented Nov 4, 2018

I added some beginning of build scripts here, but did run out of time, please try to add more to them as PRs. They are not finished yet.

https://github.com/wekan/wekan/blob/edge/rebuild-wekan.bat

https://github.com/wekan/wekan/blob/edge/start-wekan.bat

@xet7
Copy link
Member
xet7 commented Nov 4, 2018

Moved to #710

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants
0