Windows Port? #2105
Replies: 3 comments 13 replies
-
|
Support for this is something that has been worked on in recent months. I’m very interested, and although the first step was adding macOS support, I’m also open to any contributions to make it work on Windows. I think Tuba has an action to generate a Windows installer — we could follow that approach |
Beta Was this translation helpful? Give feedback.
-
|
I'm not ready to submit a PR yet, but I have made some progress on this. You can take a look at my work-in-progress here: https://github.com/achmafooma/planify/tree/feat/windows-support I still need to validate and write-up the Windows build instructions, and set up an installer package. I'll take a look at how Tuba is doing it. I am also pretty familiar with the NSIS (Nullsoft Installer System), which many projects use. So far I've just been working on getting the build process working well and getting all the required dependencies in the right places to make a package that will run correctly [hopefully] on any Windows system. If anybody wants to try an UNOFFICIAL, UNSUPPORTED binary build, you can grab this ZIP file: https://update.intersanity.com/share/planify-4.16.1-WINDOWS-TEST-UNOFFICIAL.zip Just unzip it somewhere, go into the 'bin' directory, and double-click on 'io.github.alainm23.planify.exe'. If you test it and something isn't working right, let me know. So far I've been mostly testing with my NextCloud instance and it seems to be working perfectly. I was pleasantly surprised to find it even stores the DB in the user's AppData directory like a good Windows app should. |
Beta Was this translation helpful? Give feedback.
-
|
I've got the app working very well on Windows now. Solved a number of crashes and things that didn't work quite right. And I've been keeping it synced with the upstream changes and making sure it still builds and works. I also made some tweaks so it looks a bit more "native," including using the standard Windows titlebar and window controls and adjusting some of the colors. Of course I have all that set up as conditional so it doesn't affect Linux builds, and I've been building and testing my code in a Linux environment to make sure I don't unintentionally mess it up ;-). You can see a screenshot below (I redacted my tasks and categories; but you can see that I'm really using it as a 'daily driver' now!). Latest code still at the same place I linked above: https://github.com/achmafooma/planify/tree/feat/windows-support I still have a few 'to-dos' to complete before I make my pull request (list below). But please feel free to take a look at what I've done and let me know if you have comments or suggestions. I have only a little previous experience with Adwaita and GTK4, and virtually none with Meson or Vala, so I'm learning as I go, and I'm happy to take correction from people with more knowledge and experience. Remaining to-dos:
Like I said, feedback welcome!
|
Beta Was this translation helpful? Give feedback.



Uh oh!
There was an error while loading. Please reload this page.
-
I am relatively "platform agnostic" and use Windows, Macs, and Linux machines. For to-dos I've been using Apple Reminders on Mac and Planify on Linux, but I haven't found anything I like on Windows.
Planify can build and run on Windows (using the MSYS2 UCRT64 build environment); see screenshot below. It seems to work correctly and I haven't come across any major issues. It syncs with my NextCloud instance as expected. After I got all the necessary prerequisites installed, I just had to use these meson flags to configure the build:
-Dwebkit=false -Dportal=false -Devolution=falseRight now I have to run it inside the MSYS2 environment, but it's proof that the app can be built and packaged for Windows. I'm not making any promises [yet ;-)], but I would consider writing and contributing both code and documentation for building and packaging for Windows (and using NSIS or similar to create a Windows installer).
@alainm23, is this something you are interested in? I'm not sure if your intended scope is Gnome/Linux only or if you want to expand across platforms. If I move forward with this I would prefer to make it an 'official' contribution, but if you aren't interested I could make my own unofficial soft-fork.
For everybody else, is this something you'd be interested in or would be useful to you? Vote below ;-)
7 votes ·
Beta Was this translation helpful? Give feedback.
All reactions