Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-05 Thread Uwe Stöhr

Am 04.04.2019 um 01:53 schrieb Richard Kimberly Heck:


You said I have to *compile* LyX on Windows. Of course I *install* LyX
under Windows to test it.


This is fine since you test if the compiled version works.


I agree, of course, that it would be better if the person responsible
for the Windows installer was a Windows user. But, at the moment, we
don't have anyone who is (i) willing to take that on and (ii) willing to
abide by decisions of the LyX team.


The main problem is that the rules don't follow the experience the LyX
Windows community collected over many years. Your decision not to
include a TeX distribution to the installer did not improve the
situation but worse it. Remember that MiKTeX was once included to the
installer because we needed a method to setup and repair broken TeX
distribution settings. That users broke their MiKTeX or TeXLive happened
often and I did not have the time to explain the same things how to
repair/use correct settings again and again. (You can look in the
mailing list archives how many mails I wrote over the years addressing
these issues.) Thus I developed together with the MiKTeX maintainer an
API that the installer could set up everything. Moreover it enabled to
repair broken systems just by installing LyX again.
So kicking this out is a nightmare for a new potential maintainer
because he is in the state I was before I added MiKTeX to the installer.
And I never said MiKTeX is the greatest TeX distro. It is definitely not
and recently it was quite buggy but it provides methods to set it up at
install time.

However, please sign your installer using Microsoft's signtool. This is
important because Microsoft made his SmartScreen filter recently more
aggressive. This filter is not very smart and it sucks. Nevertheless, we
have to accept that it currently tells users that installing LyX could
be harmful and one has to explicitly say "install it anyway" to get LyX
installed. One reason is that executables should have a digital
signature. With a signature SmartScreen will shout anyway but "learn"
much faster that LyX is not dangerous.
You can use the self-signature file I set up for LyX:
https://github.com/donovaly/LyXWinInstaller/blob/master/LyXorg.pfx

regards Uwe


Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-03 Thread Baris Erkus
On 04-Apr-19 2:53 AM, Richard Kimberly Heck wrote:
> On 4/3/19 5:52 PM, Uwe Stöhr wrote:
>> Am 02.04.2019 um 03:02 schrieb Richard Kimberly Heck:
>>
 You see why I insist that proper Windows support is only possible if
 the
 whole process, compilation, installer building and testing the
 installation is run on different Win systems.
>>> No, I don't see why it matters whether we compile LyX on Windows or on
>>> Linux, and nothing you said seems to address that.
>> I just gave you two examples why only installing LyX on a Windows PC
>> could unveil problems:
> You said I have to *compile* LyX on Windows. Of course I *install* LyX
> under Windows to test it.
>
> As I also said, it is my intention to release 'testing' versions which,
> presumably, will be installed by people on different systems. I'm hoping
> to get to this fairly soon. Problems that turn up that way will be fixed.
>
> I agree, of course, that it would be better if the person responsible
> for the Windows installer was a Windows user. But, at the moment, we
> don't have anyone who is (i) willing to take that on and (ii) willing to
> abide by decisions of the LyX team.
>
> Riki
>
>
Hello,

The new approach in software engineering is conduct agile DevOps cycles, 
which results frequent releases of the software. This may be problematic 
for programs like LyX, which depends on many other open-source sofware 
(e.g. Python, MikTeX, ImageMagic, etc.. ). One solution to this problem 
may be implementing agile DevOps cycles for LyX itself. There are tools 
like Jenkins that can be used for automated testing and release. Maybe, 
LyX team can invest to such technologies to be able to be synced with 
the surrounding software.

B. Erkus

-- 
↓↓
Please bottom-post. Start your reply here:



Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-03 Thread Richard Kimberly Heck
On 4/3/19 5:52 PM, Uwe Stöhr wrote:
> Am 02.04.2019 um 03:02 schrieb Richard Kimberly Heck:
>
>>> You see why I insist that proper Windows support is only possible if
>>> the
>>> whole process, compilation, installer building and testing the
>>> installation is run on different Win systems.
>>
>> No, I don't see why it matters whether we compile LyX on Windows or on
>> Linux, and nothing you said seems to address that.
>
> I just gave you two examples why only installing LyX on a Windows PC
> could unveil problems:

You said I have to *compile* LyX on Windows. Of course I *install* LyX
under Windows to test it.

As I also said, it is my intention to release 'testing' versions which,
presumably, will be installed by people on different systems. I'm hoping
to get to this fairly soon. Problems that turn up that way will be fixed.

I agree, of course, that it would be better if the person responsible
for the Windows installer was a Windows user. But, at the moment, we
don't have anyone who is (i) willing to take that on and (ii) willing to
abide by decisions of the LyX team.

Riki




Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-03 Thread Uwe Stöhr

Am 02.04.2019 um 03:02 schrieb Richard Kimberly Heck:


You see why I insist that proper Windows support is only possible if the
whole process, compilation, installer building and testing the
installation is run on different Win systems.


No, I don't see why it matters whether we compile LyX on Windows or on
Linux, and nothing you said seems to address that.


I just gave you two examples why only installing LyX on a Windows PC
could unveil problems:

- the installer must assure that LyX is not currently running when
installing. The plugin that should do this fails now since the latest
Win 10 update from March.
Yes, the plugin was already declared deprecated but we both missed this.
We are all humans so only frequent testing on different Windows systems
will uncover such cases.

- the other example was the installation of LyX. There was a nasty bug
in MiKTeX that made it crash when LyX's configure.py was run. This was
no LyX bug but for the LyX users the effect was the same - LyX became
unusable for those who had MiKTeX already installed.
I noticed this during my tests, informed the MiKTeX developer and he
fixed it within 2 days.

So if the goal is still to deliver a working LyX system it is not enough
to compile it and its installer. One must test the different components
on different Windows systems.

One more example: ImageMagick releases made frequently problems in the
past. Some released had general problems with EPS and PDF images. How
will you see this if not testing on Windows? The crux is that the users
can't know what is causing a problem. They just see e,g, that some
images won't be displayed within LyX. Therefore I run different image
tests for every installer I release, on Win 7 and Win 10. Sometimes only
the combination of a certain Ghostscript and ImageMagick release caused
issues.

I fixed the particular NSIS plugin problem now in the installer for
FreeCAD by using the plugin "nsProcess". I'll backport this to the
LyXWinInstaller and you should do this for your installer as well.

regards Uwe


Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-01 Thread Baris Erkus
On 01-Apr-19 9:25 PM, Joel Kulesza wrote:

I'm interested in learning more about this and want to be sure I'm following 
from the state-of-the-art.

Thank you,
Joel

+1

I have tried to do this on my 64 bit Win10 once, with cmake, Qt5 and etc., but 
was not successful.

I would be really interested in how this is done on different environments. If 
this is documented somewhere, I can try it on my PC.

BE

--
↓↓
Please bottom-post. Start your reply here:


Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-01 Thread Richard Kimberly Heck
On 4/1/19 2:25 PM, Joel Kulesza wrote:
> On Mon, Apr 1, 2019 at 10:22 AM Richard Kimberly Heck
> mailto:rikih...@lyx.org>> wrote:
>
> On 3/31/19 8:13 PM, Uwe Stöhr wrote:
> > Am 26.03.2019 um 20:58 schrieb Richard Kimberly Heck:
> >
> >> Just to be super clear: The compilers used are different, so the
> >> binaries are different.
> >
> > How do youu build? I use MSVC 2015.
>
> I use gcc in a cross-platform environment. I.e., I compile for Windows
> on Linux.
>
>
> To be sure: is the process you (Riki) are describing the one on Line
> 156 of Install.Win32?  If not, can you please guide me to a
> description of the process you're following (either your own
> documentation in the repo or a more generic guidance document)?

No, my process is a bit different. I guess I should document it
somewhere (besides here). But basically, you install mingw and all the
same dependencies (though the mingw versions) you'd need for compiling
LyX normally. (So, e.g., mingw32-qt5*, to be safe; mingw32-zlib; etc.
I'm using the 32 bit versions now, but should try the 64 bit later.)
Then it's:

    # mkdir build-mingw
    # cd build-mingw
    # bash ../development/cmake/scripts/cmingw

That's a script that runs mingw's version of cmake with certain
settings, which you can find in the script. Then, once that completes:

    # make
    # make package

The latter builds a zip file with all necessary libraries included.
Unfortunately, as it is now, it will only work on Fedora, because the
paths seem to be different on different systems. But it could presumably
be adapted to other systems. (The old version was for Ubuntu.)

My own practice is then to copy the zip file over to Windows running in
a VM and build the installer there. There's a version of NSIS that runs
on Linux, but the installer uses Windows style paths, so it won't work
on Linux without heavy modification, at least, and I'm not sure it will
work at all.

Why compile on Linux? It's a LOT easier.

Riki




Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-01 Thread Richard Kimberly Heck
On 4/1/19 6:04 PM, Uwe Stöhr wrote:
> Am 01.04.2019 um 18:22 schrieb Richard Kimberly Heck:
>
>> I use gcc in a cross-platform environment. I.e., I compile for Windows
>> on Linux.
>
> Hmm, but how do you check what fits to the different Windows systems?

I test some things myself and rely upon other people to test them on
other systems. This is no different from what we do on any other
platform. It's my intention to start offering more frequent 'testing'
releases, but this semester has been crazy busy.


> ...I don't know if one can rely
> on GCC that programs compiled with it will run also on latest and future
> Win 10 versions other than running LyX under Win 10. (Then one can
> directly compile LyX under Windows.) 

Lots and lots of programs get compiled this way, and gcc provides its
own runtime libraries (which of course interface with the public Windows
API). I'd wager, in fact, that they may be more stable, since they do
not use undocumented features, system calls, and the like.


> You see why I insist that proper Windows support is only possible if the
> whole process, compilation, installer building and testing the
> installation is run on different Win systems.

No, I don't see why it matters whether we compile LyX on Windows or on
Linux, and nothing you said seems to address that.

Riki




Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-01 Thread Uwe Stöhr

Am 01.04.2019 um 18:22 schrieb Richard Kimberly Heck:


I use gcc in a cross-platform environment. I.e., I compile for Windows
on Linux.


Hmm, but how do you check what fits to the different Windows systems?
For example last weekend I discovered that the FindProc NSIS plugin that
normally detects that no LyX.exe is already running is working fine on
Windows 7 and older Win 10 but not on the latest Win 10.

The plugin was not compiled using MSVC and I don't know if one can rely
on GCC that programs compiled with it will run also on latest and future
Win 10 versions other than running LyX under Win 10. (Then one can
directly compile LyX under Windows.)

You see why I insist that proper Windows support is only possible if the
whole process, compilation, installer building and testing the
installation is run on different Win systems.

regards Uwe


Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-01 Thread Joel Kulesza
On Mon, Apr 1, 2019 at 10:22 AM Richard Kimberly Heck 
wrote:

> On 3/31/19 8:13 PM, Uwe Stöhr wrote:
> > Am 26.03.2019 um 20:58 schrieb Richard Kimberly Heck:
> >
> >> Just to be super clear: The compilers used are different, so the
> >> binaries are different.
> >
> > How do youu build? I use MSVC 2015.
>
> I use gcc in a cross-platform environment. I.e., I compile for Windows
> on Linux.
>

To be sure: is the process you (Riki) are describing the one on Line 156 of
Install.Win32?  If not, can you please guide me to a description of the
process you're following (either your own documentation in the repo or a
more generic guidance document)?

I'm interested in learning more about this and want to be sure I'm
following from the state-of-the-art.

Thank you,
Joel


Re: Are you going to offer new versions of LyXWinInsaller?

2019-04-01 Thread Richard Kimberly Heck
On 3/31/19 8:13 PM, Uwe Stöhr wrote:
> Am 26.03.2019 um 20:58 schrieb Richard Kimberly Heck:
>
>> Just to be super clear: The compilers used are different, so the
>> binaries are different.
>
> How do youu build? I use MSVC 2015.

I use gcc in a cross-platform environment. I.e., I compile for Windows
on Linux.

Riki




Re: Are you going to offer new versions of LyXWinInsaller?

2019-03-31 Thread Uwe Stöhr

Am 26.03.2019 um 20:58 schrieb Richard Kimberly Heck:


Just to be super clear: The compilers used are different, so the
binaries are different.


How do youu build? I use MSVC 2015.

regards Uwe


Re: Are you going to offer new versions of LyXWinInsaller?

2019-03-26 Thread Richard Kimberly Heck
On 3/26/19 11:44 AM, Uwe Stöhr wrote:
> On 26.03.2019 10:58, Reuven Segev wrote:
>
>> By the way, I would be grateful if you let me know whether the
>> customization files for the lyx.org  distribution are in
>> the same folder and subfolders (\AppData\Roaming\LyX2.3) as in your
>> distribution.
>
> Yes, this is the same folder.
> The differences in the installers are how the necessary third-party
> programs are handled. LyX itself is identical since I only build from
> the official LyX release source code.

Just to be super clear: The compilers used are different, so the
binaries are different. But there should (hopefully) not be any
noticeable difference to users.

Riki




Re: Are you going to offer new versions of LyXWinInsaller?

2019-03-26 Thread Uwe Stöhr

On 26.03.2019 10:58, Reuven Segev wrote:


By the way, I would be grateful if you let me know whether the
customization files for the lyx.org  distribution are in
the same folder and subfolders (\AppData\Roaming\LyX2.3) as in your
distribution.


Yes, this is the same folder.
The differences in the installers are how the necessary third-party
programs are handled. LyX itself is identical since I only build from
the official LyX release source code.

regards Uwe


Re: Are you going to offer new versions of LyXWinInsaller?

2019-03-25 Thread Richard Kimberly Heck
On 3/25/19 9:53 PM, Uwe Stöhr wrote:
> Am 21.03.2019 um 08:05 schrieb Reuven Segev:
>
>> I would like to know whether you are going to offer updates for
>> LyXWinInstaller, or should the users download the new versions from the
>> lyx.org  website?

You should download the installer from the LyX website. You always
should have done that.

Riki




Re: Are you going to offer new versions of LyXWinInsaller?

2019-03-25 Thread Uwe Stöhr

Am 21.03.2019 um 08:05 schrieb Reuven Segev:


I would like to know whether you are going to offer updates for
LyXWinInstaller, or should the users download the new versions from the
lyx.org  website?


Dear Reuven,

I almost left LyX because the idea was to provide an installer that
allows average PC users to use LyX not only users with computer
background knowledge.
Unfortunately non-Windows developers thought that users must need to
learn about how LaTeX works before they can install LyX.
This contradicted my concept.

Recently I invested some time to have a look at the installer and fixed
some bugs. It was also possible to fix a crash bug in MiKTeX which
prevented new installations of LyX. The fixed MiKTeX version was
released on Saturday so I think I could release another LyXWinInstaller.

However to be able to install LyX without the crash, MiKTeX must be
updated by the installer and this is what the other LyX developer forbid
me. (Just to please some expert users, the majority has to suffer,
argh.) So in effect I cannot release any official LyX installer anymore.

Note that with the installer you find on http://lyx.org you must have
the knowledge how LyX works, that you need to install LaTeX
distribution, what a distribution is and that the distribution has a
package concept, what a package is and how the distribution you
installed handles packages and how packages and the distribution itself
is updated.
This is is a lot of required knowledge and I already got feedback that
users struggle to update MiKTeX on their own.
Besides this the installer at http://lyx.org doesn't provide up to date
third-party programs, got no bugfixes and is not digitally signed as
required nowadays for Windows 10.

regards Uwe