Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

classic Classic list List threaded Threaded
38 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

Eduard Braun

Hi all,

one of the biggest changes in current trunk is the switch to gtk3.

As some of you already know this step will be a hard one on Windows as we have to rely on pre-built development libraries to be able to compile Inkscape:

  • devlibs currently has no support for gtk3 at all.
    (There's an experimental branch on which jazzynico was working, but as far as I know he was never able to complete it due to build issues)
  • devlibs64 includes gtk3 3.19.6 but IMHO it's pretty broken and would require *a lot* of work to get anywhere near being usable

As a result we're currently not able to build Inkscape for 32-bit Windows at all (bug 1609954 [1]) and builds with devlibs64 are nowhere close to be usable.


Therefore I want to propose to switch to MSYS2 for compiling Inkscape trunk on Windows!

MSYS2 is a rewrite of MSYS including all the necessary build tools to compile native applications for Windows using mingw-w64 (see official homepage [2] for details). Furthermore it includes the package manager "pacman" (users of Arch Linux will know it) which allows to conveniently install and upgrade packages.

The switch would have a *lot* of advantages:

  • Easier setup of the build system as gcc and all necessary build tools and libraries are included in MSYS2 (currently we require to download gcc + devlibs + cmake separately and procedure varies widely between 32-bit and 64-bit builds)
  • A solid set of constantly updated libraries (see [3]).
  • Packages are usually built with a small set of patches to fix compatibility errors on Windows that would otherwise require hours to figure out when building libraries from scratch.
  • An active developer community. Questions are answered swiftly, bugs in the provided libraries can usually be figured out jointly.
  • Creating new packages (if it should ever be required) or recompiling existing packages (i.e. to test a fix) is extremely easy. (I recently added libvisio [4] which was the only dependency of Inkscape not yet provided)
  • 32-bit and 64-bit builds are equivalent. The exact same library versions are used and MSYS2 includes build environments for both that co-exist by default

I'm already successfully building current trunk with MSYS2 without any issues at all (there are no code changes needed, only environment variables have to be adjusted and the CMake install target has to be adjusted to pick up the correct libraries). If you're interested you can find the latest builds at [5] (the most obvious change is the Adwaita theme that is now used by gtk3 by default but doesn't look very native. However that's something we can customize going forward as desired).


There's one big downside:
My builds currently don't work on Windows XP. However I'm afraid this has nothing to do with MSYS2. Many libraries have started to drop support for Windows XP, most importantly gtk3 does not support it after 3.16 [6]. This means we have two possibilites:
  • Drop support for Windows XP in Inkscape 0.93
  • Try our best to somehow (currently I have no idea how!) continue support for Windows XP. This would most likely require us to keep building, maintaining and distributing our own development libraries (however I guess even here MSYS2 would be a huge help). While achieving this might sound favourable keep in mind that it would require us to limit ourselves to old library versions on purpose with all the inevitable downsides like unfixed bugs and growing number of incompatibilities in newer OSs.

I thought about this for some time now and although it was not an easy decision I'd vote for the first option. I know people still use Windows XP in productive environments (I have an old Windows XP server running myself - shame on me) but to be realistic it's time to move on. Support for XP ended a long time ago, it's insecure and there's only very few cases where people are actually bound to XP for other reasons than convenience. Weighing all the pros and cons I'd say the pros clearly prevail!


So: Let me know what you think!
Does a switch to MSYS2 as build system sound reasonable to you?
Is Windows XP support something we have to keep even if it means a huge amount of additional effort and requires us to limit ourselves on newer platforms on purpose?


Looking forward to you thoughts,
Eduard


[1] https://bugs.launchpad.net/bugs/1609954
[2] http://www.msys2.org/
[3] https://github.com/Alexpux/MINGW-packages
[4] https://github.com/Alexpux/MINGW-packages/pull/2194
[5] http://download.tuxfamily.org/inkscape/win64/
[6] https://github.com/GNOME/gtk/blob/24483481c1eaa6e3bad9f158e2d4d3ef21505d9b/NEWS#L2340


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

Sylvain Chiron
Le 26/02/2017 à 01:05, Eduard Braun a écrit :
> there's only very few
> cases where people are actually bound to XP for other reasons than
> convenience.

I’m not sure of what you mean, but I think many professionals still have
to use Windows XP because nobody is available/paid/skilled for
installing something else, e.g. in hospitals (I’ve also heard the case
about Windows 98).

Hopefully, the people who really need Inkscape 0.93 will be able to
install a libre OS instead of Windows XP.

Regards,
--
Sylvain

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

Miguel Lopez
And, there are people who are really reluctant to move beyond Windows
XP, or are stuck with old computers. In a ideal world, if one is to
stick with XP, one would use in a virtual machine in newer computers,
but that's not the world we live in. Dropping the support would be the
right solution for .93 and beyond. There's no reason to use XP other
than legacy gaming or legacy software support.


On 2/26/2017 9:38 AM, Sylvain Chiron wrote:

> Le 26/02/2017 à 01:05, Eduard Braun a écrit :
>> there's only very few
>> cases where people are actually bound to XP for other reasons than
>> convenience.
> I’m not sure of what you mean, but I think many professionals still have
> to use Windows XP because nobody is available/paid/skilled for
> installing something else, e.g. in hospitals (I’ve also heard the case
> about Windows 98).
>
> Hopefully, the people who really need Inkscape 0.93 will be able to
> install a libre OS instead of Windows XP.
>
> Regards,
> --
> Sylvain
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> Inkscape-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

C R
If they are still on XP, they can still use older builds of Inkscape. People stuck on XP must surely be used to new software not working on their old deprecated OS by now.

On 27 Feb 2017 12:07 a.m., "Miguel Lopez" <[hidden email]> wrote:
And, there are people who are really reluctant to move beyond Windows
XP, or are stuck with old computers. In a ideal world, if one is to
stick with XP, one would use in a virtual machine in newer computers,
but that's not the world we live in. Dropping the support would be the
right solution for .93 and beyond. There's no reason to use XP other
than legacy gaming or legacy software support.


On 2/26/2017 9:38 AM, Sylvain Chiron wrote:
> Le 26/02/2017 à 01:05, Eduard Braun a écrit :
>> there's only very few
>> cases where people are actually bound to XP for other reasons than
>> convenience.
> I’m not sure of what you mean, but I think many professionals still have
> to use Windows XP because nobody is available/paid/skilled for
> installing something else, e.g. in hospitals (I’ve also heard the case
> about Windows 98).
>
> Hopefully, the people who really need Inkscape 0.93 will be able to
> install a libre OS instead of Windows XP.
>
> Regards,
> --
> Sylvain
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> Inkscape-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

LucaDC
In reply to this post by Eduard Braun
I'm one of those still using Windows XP in my working environment. I'd just share my point of view in case it's useful to take a decision.
I both use Inkscape under Windows 7 (64 bit) and Windows XP (32 bit).
Knowing that support on Windows XP is ceasing makes me sad because I think it's a good OS. But facing reality, it's not believable that people are going to make huge efforts to keep alive a system that is now inevitably fixed to his last development stage and will not improve anymore.

Nevertheless, I'd like at least to be able to continue using what's still working on it.

So my proposal would be to drop compatibility with Windows XP for current development (sigh!) but keep fixing bugs in the last working 32 bit tree (and maybe some simple backport of what can be done without too much difficulty, but not necessarily).
Having all the current features of Inskcape will require a 64 bit system, but people "stuck" to Windows XP systems could still benefit of a form of active support, even if reduced to fixing bugs.

My probably limited knowledge pairs 32 bit with Windows XP. So from my point of view, dropping XP equals dropping active 32 bit development. I don't know if there are other 32 bit systems around actively supported that makes keeping 32 bit compatibility in current trunk desirable and worth it.

Hence, in few words: trunk 64 bit only for active development and last 32 bit working version actively kept bug free but not developed anymore.
It could be convenient to set a "last active support date" for this 32 bit semi-frozen branch.

Luca
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

LucaDC
In reply to this post by C R
C R wrote
People stuck on XP must surely be used to new software not working on their
old deprecated OS by now.
I agree, this is true.
But the problem with Inskcape is that its last 32 bit version is not perfect.
So IMO the point is not in new features (new software), but in at least fixing what still needs to in the current 32 bit software.

Luca
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

LucaDC
On the other hand, having a development-free branch devoted to bug fixing only could be highly beneficial for trunk where often big efforts are spent on introducing new features and not as many on fixing all the messes that come after them.
I assume that for some time (up to the "last active support date" for 32 bit?) the bugs of the two branches are going to be pretty the same; or at least the bugs in the semi-frozen 32 bit branch are going to be present in trunk (not necessarily the opposite because of the new features). So much of the work is going to pay twice.

Luca
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

alvinpenner
In reply to this post by C R
>> If they are still on XP, they can still use older builds of Inkscape. People stuck on XP must surely be used to new software not working on their old deprecated OS by now.

Actually in my experience the situation is the exact opposite. Windows 10 has not offered me access to any new software that is of any interest to me. Instead it has forced me to abandon two old, legacy, pieces of software that I had used daily for about 15 years on XP, and now can no longer use because they are 16 bit software. So the switch to Windows 10 has been a significant step backwards in terms of functionality and in terms of user-friendliness. Windows 10 is incredibly unfriendly when it comes to simple things like copying files, and it is full of bugs and glitches. I upgraded to Windows 10 because I was literally forced to do so, not because I wanted to, and certainly not because it offered me anything that I was actually interested in.

Alvin
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

LucaDC
Hi Alvin. I get your point but to be honest I think that the step from Windows XP to Windows 10 is so wide that it is quite likely to cause troubles. For this reason I don't find it a good example to oppose to what C R was saying.

In my experience, the main problem when moving between OSs has been finding the drivers for (very) old external hardware. I've solved it virtualizing my old XP machine in my new OS: it's effective and gives you the advantages of working with very powerful new hardware using old trusted tools.
I'd suggest you try it if you can or are allowed to.

Luca
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

Brynn
In reply to this post by Eduard Braun
I'm not a developer, and this is not an opinion on the matter.  But I was
curious how many people might still be using XP.  I searched and found this
(dated before end of support date)

https://www.cnet.com/news/microsofts-windows-xp-is-still-kickin-do-you-use-it/

And this almost a year after end of support

http://www.techrepublic.com/article/windows-xp-use-declining-but-millions-still-willingly-at-risk/

All best,
brynn

-----Original Message-----
From: Eduard Braun
Sent: Saturday, February 25, 2017 5:05 PM
To: inkscape-devel
Subject: [Inkscape-devel] Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs,
MSYS2 and support for Windows XP



Hi all,

one of the biggest changes in current trunk is the switch to gtk3.

As some of you already know this step will be a hard one on Windows as we have
to rely on pre-built development libraries to be able to compile Inkscape:

devlibs currently has no support for gtk3 at all.
(There's an experimental branch on which jazzynico was working, but as far as I
know he was never able to complete it due to build issues)

devlibs64 includes gtk3 3.19.6 but IMHO it's pretty broken and would require *a
lot* of work to get anywhere near being usable

As a result we're currently not able to build Inkscape for 32-bit Windows at all
(bug 1609954 [1]) and builds with devlibs64 are nowhere close to be usable.




Therefore I want to propose to switch to MSYS2 for compiling Inkscape trunk on
Windows!


MSYS2 is a rewrite of MSYS including all the necessary build tools to compile
native applications for Windows using mingw-w64 (see official homepage [2] for
details). Furthermore it includes the package manager "pacman" (users of Arch
Linux will know it) which allows to conveniently install and upgrade packages.


The switch would have a *lot* of advantages:

Easier setup of the build system as gcc and all necessary build tools and
libraries are included in MSYS2 (currently we require to download gcc + devlibs
+ cmake separately and procedure varies widely between 32-bit and 64-bit builds)

A solid set of constantly updated libraries (see [3]).
Packages are usually built with a small set of patches to fix compatibility
errors on Windows that would otherwise require hours to figure out when building
libraries from scratch.

An active developer community. Questions are answered swiftly, bugs in the
provided libraries can usually be figured out jointly.
Creating new packages (if it should ever be required) or recompiling existing
packages (i.e. to test a fix) is extremely easy. (I recently added libvisio [4]
which was the only dependency of Inkscape not yet provided)
32-bit and 64-bit builds are equivalent. The exact same library versions are
used and MSYS2 includes build environments for both that co-exist by default


I'm already successfully building current trunk with MSYS2 without any issues at
all (there are no code changes needed, only environment variables have to be
adjusted and the CMake install target has to be adjusted to pick up the correct
libraries). If you're interested you can find the latest builds at [5] (the most
obvious change is the Adwaita theme that is now used by gtk3 by default but
doesn't look very native. However that's something we can customize going
forward as desired).



There's one big downside:
My builds currently don't work on Windows XP. However I'm afraid this has
nothing to do with MSYS2. Many libraries have started to drop support for
Windows XP, most importantly gtk3 does not support it after 3.16 [6]. This means
we have two possibilites:


Drop support for Windows XP in Inkscape 0.93
Try our best to somehow (currently I have no idea how!) continue support for
Windows XP. This would most likely require us to keep building, maintaining and
distributing our own development libraries (however I guess even here MSYS2
would be a huge help). While achieving this might sound favourable keep in mind
that it would require us to limit ourselves to old library versions on purpose
with all the inevitable downsides like unfixed bugs and growing number of
incompatibilities in newer OSs.


I thought about this for some time now and although it was not an easy decision
I'd vote for the first option. I know people still use Windows XP in productive
environments (I have an old Windows XP server running myself - shame on me) but
to be realistic it's time to move on. Support for XP ended a long time ago, it's
insecure and there's only very few cases where people are actually bound to XP
for other reasons than convenience. Weighing all the pros and cons I'd say the
pros clearly prevail!





So: Let me know what you think!
Does a switch to MSYS2 as build system sound reasonable to you?
Is Windows XP support something we have to keep even if it means a huge amount
of additional effort and requires us to limit ourselves on newer platforms on
purpose?




Looking forward to you thoughts,
Eduard




[1] https://bugs.launchpad.net/bugs/1609954
[2] http://www.msys2.org/
[3] https://github.com/Alexpux/MINGW-packages
[4] https://github.com/Alexpux/MINGW-packages/pull/2194
[5] http://download.tuxfamily.org/inkscape/win64/
[6]
https://github.com/GNOME/gtk/blob/24483481c1eaa6e3bad9f158e2d4d3ef21505d9b/NEWS#L2340






------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot





_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel 


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

C R
In reply to this post by LucaDC
Inkscape is so far from bug free at the moment that it's not even worth worrying about having the upgrade if just counting bugs. :)

Support for XP ended in 2015, which means there have not been security updates from Microsoft in nearly two years...

Unfortunately,  XP is not a good OS anymore, as a primary feature of a good OS is updates and support. It's dangerous to use closed source OSs past the support life, because the only company that has access to the code has stopped modifying it. 

Imho, we should not be encouraging XP users to stay on XP, or any OS that is no longer supported by the community, or by the software corporation whence it came.

This includes dead distros of Open Source OSs too, such as CrunchBang Linux, etc. We should encourage migration to other platforms, and the project focus on fixing bugs there.

-C

On 27 Feb 2017 9:59 a.m., "LucaDC" <[hidden email]> wrote:
C R wrote
> People stuck on XP must surely be used to new software not working on
> their
> old deprecated OS by now.

I agree, this is true.
But the problem with Inskcape is that its last 32 bit version is not
perfect.
So IMO the point is not in new features (new software), but in at least
fixing what still needs to in the current 32 bit software.

Luca




--
View this message in context: http://inkscape.13.x6.nabble.com/Roadmap-for-Inkscape-0-93-on-Windows-GTK3-devlibs-MSYS2-and-support-for-Windows-XP-tp4979046p4979060.html
Sent from the Inkscape - Dev mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

C R
In reply to this post by alvinpenner
May I suggest migrating to Ubuntu? You may actually have some luck running those older programs in WINE. Just a thought. :)

Dosbox still runs my very first Pascal programs!

You may also find good open source replacements for your old software too, and probably for free!

Sorry to hear about your troubles with Windows 10. If you must have Windows, maybe win 7 would be better at this point.

You could also try running XP in a VM in Ubuntu, then you could have your cake and eat it too. :)

-C

On 27 Feb 2017 11:20 a.m., "alvinpenner" <[hidden email]> wrote:
>> If they are still on XP, they can still use older builds of Inkscape.
People stuck on XP must surely be used to new software not working on their
old deprecated OS by now.

Actually in my experience the situation is the exact opposite. Windows 10
has not offered me access to any new software that is of any interest to me.
Instead it has forced me to abandon two old, legacy, pieces of software that
I had used daily for about 15 years on XP, and now can no longer use because
they are 16 bit software. So the switch to Windows 10 has been a significant
step backwards in terms of functionality and in terms of user-friendliness.
Windows 10 is incredibly unfriendly when it comes to simple things like
copying files, and it is full of bugs and glitches. I upgraded to Windows 10
because I was literally forced to do so, not because I wanted to, and
certainly not because it offered me anything that I was actually interested
in.

Alvin




--
View this message in context: http://inkscape.13.x6.nabble.com/Roadmap-for-Inkscape-0-93-on-Windows-GTK3-devlibs-MSYS2-and-support-for-Windows-XP-tp4979046p4979062.html
Sent from the Inkscape - Dev mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

alvinpenner
>> You may actually have some luck running those older programs in WINE. Just a thought. :)

    Well, in actual fact, I have found some (64 bit) replacements for these old legacy programs. So I suppose it is fair to say that I have moved on. However, I am now faced with the fact that I do a great deal of switching back and forth between two machines, one of which is an old (32 bit) XP, and one is (64 bit) Win10, and the switch itself is sometimes painful.
    My main point was simply that change for the sake of change is not necessarily a good thing. Witness, for example, the fact that the new gtk3 gui in Inkscape trunk is virtually unusable, and will probably take years before it is ready for public consumption. (And incidentally this type of work, fixing a gui, is extremely boring, which means it will be hard to find people who are interested in fixing it.) And witness the fact that we have replaced the old Windows btool compile system with CMake, which is very clumsy to use, takes about 10 times longer to compile than btool did, and is virtually impossible to keep in sync if you start messing with the code base, fixing bugs and so on. These problems can all be dealt with, if one has patience, but they make life so complicated that one is, finally, tempted to just give up in frustration.

Alvin
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

LucaDC
In reply to this post by C R
C R wrote
Imho, we should not be encouraging XP users to stay on XP, or any OS that
is no longer supported by the community, or by the software corporation
whence it came.
Sorry but I can't agree.
This is always the same story: just say you don't want to help people who have a problem, don't try to convince them that they don't have it because you don't have any right to say so. If someone says he's stuck with Windows XP, why questioning on this? Just take it for granted and start from there.

C R wrote
Unfortunately,  XP is not a good OS anymore, as a primary feature of a good
OS is updates and support. It's dangerous to use closed source OSs past the
support life, because the only company that has access to the code has
stopped modifying it.
I don't agree on this too.
Why should a system not connected to internet be unsafe without updates? On the contrary: I wouldn't update any working system where everything works fine and nothing needs being fixed.
There's no real danger in keeping using some piece of software that works as is. I really don't feel the urge of always using the very last release of every software I have, unless I need some new feature. On the contrary: I see more danger in updating something that works when I don't need to.

In some environments, primary features of a good OS are its size, its resource requirements and deep knowledge of it gained with years of experience, not update nor support as you don't need them if the system is already well tested and approved.

Luca
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

LucaDC
In reply to this post by alvinpenner
+1

Luca
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

Martin Owens-2
In reply to this post by LucaDC
On Mon, 2017-02-27 at 11:13 -0700, LucaDC wrote:

> C R wrote
> > Imho, we should not be encouraging XP users to stay on XP, or any
> OS that
> > is no longer supported by the community, or by the software
> corporation
> > whence it came.
>
> Sorry but I can't agree.
> This is always the same story: just say you don't want to help people
> who
> have a problem, don't try to convince them that they don't have it
> because
> you don't have any right to say so. If someone says he's stuck with
> Windows
> XP, why questioning on this? Just take it for granted and start from
> there.

We can actually argue a deeper moral sense about what is encouraging
self harm and what is helping to serve user needs.

what CR is trying to say is that it may be morally dubious to increase
windows XPs functionality at this stage. To do so suggests that using
windows XP with new releases is safe and fair, and it's not safe or
fair.

It's hard to say no sometimes. But in this case we're asking the
project to spend a lot of time and effort helping people to continue to
hurt themselves. I agree with CR here about the harms.

I say no to XP support. The project has enough to fix without
supporting a dead operating system. Even if that no means letting users
down and forcing them to upgrade their OS or stick with older Inkscape
versions.

Best Regards, Martin Owens

 - Beaten dead horse removal service

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

C R
In reply to this post by LucaDC
Missed the point of everything I said.
It's not about helping or not helping, it's about supporting things that are a danger to users. See for example how many XP machines are currently used in botnet attacks.

I also mentioned running XP in a VM to this user, so I'm clearly not against helping. :)

-C

On 27 Feb 2017 6:15 p.m., "LucaDC" <[hidden email]> wrote:
C R wrote
> Imho, we should not be encouraging XP users to stay on XP, or any OS that
> is no longer supported by the community, or by the software corporation
> whence it came.

Sorry but I can't agree.
This is always the same story: just say you don't want to help people who
have a problem, don't try to convince them that they don't have it because
you don't have any right to say so. If someone says he's stuck with Windows
XP, why questioning on this? Just take it for granted and start from there.


C R wrote
> Unfortunately,  XP is not a good OS anymore, as a primary feature of a
> good
> OS is updates and support. It's dangerous to use closed source OSs past
> the
> support life, because the only company that has access to the code has
> stopped modifying it.

I don't agree on this too.
Why should a system not connected to internet be unsafe without updates? On
the contrary: I wouldn't update any working system where everything works
fine and nothing needs being fixed.
There's no real danger in keeping using some piece of software that works as
is. I really don't feel the urge of always using the very last release of
every software I have, unless I need some new feature. On the contrary: I
see more danger in updating something that works when I don't need to.

In some environments, primary features of a good OS are its size, its
resource requirements and deep knowledge of it gained with years of
experience, not update nor support as you don't need them if the system is
already well tested and approved.

Luca




--
View this message in context: http://inkscape.13.x6.nabble.com/Roadmap-for-Inkscape-0-93-on-Windows-GTK3-devlibs-MSYS2-and-support-for-Windows-XP-tp4979046p4979071.html
Sent from the Inkscape - Dev mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

Eduard Braun
In reply to this post by Eduard Braun

OK, I'm afraid I started something I did not intend to...

To clarify:

  • The intent of my message was *not* to discuss whether people still use Windows XP (they do, I know) and it was *not* to discuss if we still want to support Windows XP (we want, if it's possible).
  • The intent of my message was to discuss possible ways forward regarding the switch to gtk3 in trunk. (Please be aware that this discussion is only about trunk [!] and what will become Inkscape 0.93. Inkscape 0.92 will be unaffected and can be seen as a LTS branch that will always work on Windows XP!)

So regarding Windows XP:
Right now I have no idea *how* to support Windows XP in current trunk. Therefore, unless you know of ways how we *can* support Windows XP in trunk there's absolutely no point in discussing whether we want to! This is a purely technical question at this point and has nothing to do with our personal wishes!

Meanwhile my personal focus was actually on the MSYS2 part (on which nobody commented so far) and therefore I hope we can bring this discussion back on track (this is the devel list - not the user list!).

Regards,
Eduard



Am 26.02.2017 um 01:05 schrieb Eduard Braun:

Hi all,

one of the biggest changes in current trunk is the switch to gtk3.

As some of you already know this step will be a hard one on Windows as we have to rely on pre-built development libraries to be able to compile Inkscape:

  • devlibs currently has no support for gtk3 at all.
    (There's an experimental branch on which jazzynico was working, but as far as I know he was never able to complete it due to build issues)
  • devlibs64 includes gtk3 3.19.6 but IMHO it's pretty broken and would require *a lot* of work to get anywhere near being usable

As a result we're currently not able to build Inkscape for 32-bit Windows at all (bug 1609954 [1]) and builds with devlibs64 are nowhere close to be usable.


Therefore I want to propose to switch to MSYS2 for compiling Inkscape trunk on Windows!

MSYS2 is a rewrite of MSYS including all the necessary build tools to compile native applications for Windows using mingw-w64 (see official homepage [2] for details). Furthermore it includes the package manager "pacman" (users of Arch Linux will know it) which allows to conveniently install and upgrade packages.

The switch would have a *lot* of advantages:

  • Easier setup of the build system as gcc and all necessary build tools and libraries are included in MSYS2 (currently we require to download gcc + devlibs + cmake separately and procedure varies widely between 32-bit and 64-bit builds)
  • A solid set of constantly updated libraries (see [3]).
  • Packages are usually built with a small set of patches to fix compatibility errors on Windows that would otherwise require hours to figure out when building libraries from scratch.
  • An active developer community. Questions are answered swiftly, bugs in the provided libraries can usually be figured out jointly.
  • Creating new packages (if it should ever be required) or recompiling existing packages (i.e. to test a fix) is extremely easy. (I recently added libvisio [4] which was the only dependency of Inkscape not yet provided)
  • 32-bit and 64-bit builds are equivalent. The exact same library versions are used and MSYS2 includes build environments for both that co-exist by default

I'm already successfully building current trunk with MSYS2 without any issues at all (there are no code changes needed, only environment variables have to be adjusted and the CMake install target has to be adjusted to pick up the correct libraries). If you're interested you can find the latest builds at [5] (the most obvious change is the Adwaita theme that is now used by gtk3 by default but doesn't look very native. However that's something we can customize going forward as desired).


There's one big downside:
My builds currently don't work on Windows XP. However I'm afraid this has nothing to do with MSYS2. Many libraries have started to drop support for Windows XP, most importantly gtk3 does not support it after 3.16 [6]. This means we have two possibilites:
  • Drop support for Windows XP in Inkscape 0.93
  • Try our best to somehow (currently I have no idea how!) continue support for Windows XP. This would most likely require us to keep building, maintaining and distributing our own development libraries (however I guess even here MSYS2 would be a huge help). While achieving this might sound favourable keep in mind that it would require us to limit ourselves to old library versions on purpose with all the inevitable downsides like unfixed bugs and growing number of incompatibilities in newer OSs.

I thought about this for some time now and although it was not an easy decision I'd vote for the first option. I know people still use Windows XP in productive environments (I have an old Windows XP server running myself - shame on me) but to be realistic it's time to move on. Support for XP ended a long time ago, it's insecure and there's only very few cases where people are actually bound to XP for other reasons than convenience. Weighing all the pros and cons I'd say the pros clearly prevail!


So: Let me know what you think!
Does a switch to MSYS2 as build system sound reasonable to you?
Is Windows XP support something we have to keep even if it means a huge amount of additional effort and requires us to limit ourselves on newer platforms on purpose?


Looking forward to you thoughts,
Eduard


[1] https://bugs.launchpad.net/bugs/1609954
[2] http://www.msys2.org/
[3] https://github.com/Alexpux/MINGW-packages
[4] https://github.com/Alexpux/MINGW-packages/pull/2194
[5] http://download.tuxfamily.org/inkscape/win64/
[6] https://github.com/GNOME/gtk/blob/24483481c1eaa6e3bad9f158e2d4d3ef21505d9b/NEWS#L2340



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
C R
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

C R
Sorry about that Eduard. I'll be quiet now. :)
-C


On 27 Feb 2017 6:51 p.m., "Eduard Braun" <[hidden email]> wrote:

OK, I'm afraid I started something I did not intend to...

To clarify:

  • The intent of my message was *not* to discuss whether people still use Windows XP (they do, I know) and it was *not* to discuss if we still want to support Windows XP (we want, if it's possible).
  • The intent of my message was to discuss possible ways forward regarding the switch to gtk3 in trunk. (Please be aware that this discussion is only about trunk [!] and what will become Inkscape 0.93. Inkscape 0.92 will be unaffected and can be seen as a LTS branch that will always work on Windows XP!)

So regarding Windows XP:
Right now I have no idea *how* to support Windows XP in current trunk. Therefore, unless you know of ways how we *can* support Windows XP in trunk there's absolutely no point in discussing whether we want to! This is a purely technical question at this point and has nothing to do with our personal wishes!

Meanwhile my personal focus was actually on the MSYS2 part (on which nobody commented so far) and therefore I hope we can bring this discussion back on track (this is the devel list - not the user list!).

Regards,
Eduard



Am 26.02.2017 um 01:05 schrieb Eduard Braun:

Hi all,

one of the biggest changes in current trunk is the switch to gtk3.

As some of you already know this step will be a hard one on Windows as we have to rely on pre-built development libraries to be able to compile Inkscape:

  • devlibs currently has no support for gtk3 at all.
    (There's an experimental branch on which jazzynico was working, but as far as I know he was never able to complete it due to build issues)
  • devlibs64 includes gtk3 3.19.6 but IMHO it's pretty broken and would require *a lot* of work to get anywhere near being usable

As a result we're currently not able to build Inkscape for 32-bit Windows at all (bug 1609954 [1]) and builds with devlibs64 are nowhere close to be usable.


Therefore I want to propose to switch to MSYS2 for compiling Inkscape trunk on Windows!

MSYS2 is a rewrite of MSYS including all the necessary build tools to compile native applications for Windows using mingw-w64 (see official homepage [2] for details). Furthermore it includes the package manager "pacman" (users of Arch Linux will know it) which allows to conveniently install and upgrade packages.

The switch would have a *lot* of advantages:

  • Easier setup of the build system as gcc and all necessary build tools and libraries are included in MSYS2 (currently we require to download gcc + devlibs + cmake separately and procedure varies widely between 32-bit and 64-bit builds)
  • A solid set of constantly updated libraries (see [3]).
  • Packages are usually built with a small set of patches to fix compatibility errors on Windows that would otherwise require hours to figure out when building libraries from scratch.
  • An active developer community. Questions are answered swiftly, bugs in the provided libraries can usually be figured out jointly.
  • Creating new packages (if it should ever be required) or recompiling existing packages (i.e. to test a fix) is extremely easy. (I recently added libvisio [4] which was the only dependency of Inkscape not yet provided)
  • 32-bit and 64-bit builds are equivalent. The exact same library versions are used and MSYS2 includes build environments for both that co-exist by default

I'm already successfully building current trunk with MSYS2 without any issues at all (there are no code changes needed, only environment variables have to be adjusted and the CMake install target has to be adjusted to pick up the correct libraries). If you're interested you can find the latest builds at [5] (the most obvious change is the Adwaita theme that is now used by gtk3 by default but doesn't look very native. However that's something we can customize going forward as desired).


There's one big downside:
My builds currently don't work on Windows XP. However I'm afraid this has nothing to do with MSYS2. Many libraries have started to drop support for Windows XP, most importantly gtk3 does not support it after 3.16 [6]. This means we have two possibilites:
  • Drop support for Windows XP in Inkscape 0.93
  • Try our best to somehow (currently I have no idea how!) continue support for Windows XP. This would most likely require us to keep building, maintaining and distributing our own development libraries (however I guess even here MSYS2 would be a huge help). While achieving this might sound favourable keep in mind that it would require us to limit ourselves to old library versions on purpose with all the inevitable downsides like unfixed bugs and growing number of incompatibilities in newer OSs.

I thought about this for some time now and although it was not an easy decision I'd vote for the first option. I know people still use Windows XP in productive environments (I have an old Windows XP server running myself - shame on me) but to be realistic it's time to move on. Support for XP ended a long time ago, it's insecure and there's only very few cases where people are actually bound to XP for other reasons than convenience. Weighing all the pros and cons I'd say the pros clearly prevail!


So: Let me know what you think!
Does a switch to MSYS2 as build system sound reasonable to you?
Is Windows XP support something we have to keep even if it means a huge amount of additional effort and requires us to limit ourselves on newer platforms on purpose?


Looking forward to you thoughts,
Eduard


[1] https://bugs.launchpad.net/bugs/1609954
[2] http://www.msys2.org/
[3] https://github.com/Alexpux/MINGW-packages
[4] https://github.com/Alexpux/MINGW-packages/pull/2194
[5] http://download.tuxfamily.org/inkscape/win64/
[6] https://github.com/GNOME/gtk/blob/24483481c1eaa6e3bad9f158e2d4d3ef21505d9b/NEWS#L2340



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot


_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for Inkscape 0.93 on Windows - GTK3, devlibs, MSYS2 and support for Windows XP

Eduard Braun
In reply to this post by Eduard Braun
Am 26.02.2017 um 01:05 schrieb Eduard Braun:
> My builds currently don't work on Windows XP. However I'm afraid this
> has nothing to do with MSYS2.

Good news: I actually just confirmed that MSYS2 is not the problem!
I was able to build Inkscape 0.92.x r15394 with MSYS2 and the build is
working nicely on Windows XP.  This proves, that there's a compatibility
issue in gtk3 or one of its dependecies that prevents Inkscape trunk to
work on Windows XP (the 0.92.x build uses gtk2 if you're wondering).
If you want to try the build yourself you can download it at [1].

As I said before: I do not currently plan to use MSYS2 for builds of 0.92.x.
However if people think the updated library versions are something we
would want in Windows builds of the stable branch (especially the 32-bit
devlibs are quite dated and have some known issues) this test shows that
it would certainly be possible. If there's demand for it let me know, as
we should start testing early to rule out any regressions.

Regards,
Eduard


[1]
http://download.tuxfamily.org/inkscape/win32/inkscape-0.92.x-15394-win32-MSYS2-experimental.7z

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Inkscape-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/inkscape-devel
12