[Documentation mostly] msys2 as a LFS/BLFS "extensions" (The idea here is on "more documentation in the post-msys2 installation step)
Nobody has claimed this yet.
- Dominant language
- CSS
- Stars
- 3.3k
- Forks
- 446
- Avg merge
- 2h 16m
- Merged PRs (30d)
- 1
Description
Hey guys,
This issue can be closed just fine - no problem. However had, I would appreciate it if at the least one msys2 dev
could read through it. Perhaps I am not the only one with this request (and I understand that change takes time
so ... consider this more of a "future wish list" thing here really).
Before I explain the issue in more detail, I will briefly describe my "work situation" in regards to computer systems.
This I do mostly to explain the context better.
I have been using Linux since about ... 16 years or so now, give or
take. I use ruby a lot (hence the github handle) and I compile
(almost) everything from source on Linux. Some exceptions such as
the browser, or libreoffice (too much effort to compile from source)
or glibc (too much can break and I don't want to have to recompile).
But other than that, I really compile a LOT from source.
I know my way quite well here, using usually GCC, but I keep a close
eye on llvm/clang, of course; some languages run only on llvm (I
think crystal if I remember correctly).
Anyway. I also use windows (win10) on a laptop, and I use WSL1 too.
Compiling there works fine, but it is a linux environment ultimately
(on WSL1).
I also installed msys2 and I managed to compile standalone .c files
such as a hello world example.
I wrote a LOT of ruby-gtk3 over the years, so one of my use cases
is to compile the whole gtk-stack. On linux this is no problem, it
works just fine. On Windows, well ... the main problem here is that
I am a windows noob. So while I gotten to the point of being able
to compile .c or .cpp files fine, I don't quite know how things
work together on windows.
There are many guides in regards to msys2 that ultimately tell people
to use pacman. I am not an arch user (I compile from source, but I
don't use gentoo either since it's so python-centric via portage)
and to be honest ... I'd rather want to NOT have to use pacman.
In fact, I DO want to compile everything on source on windows as
well; or, at the least the parts that I would then use, such as
gtk, glib, atk, pango and so forth.
I can adjust my ruby scripts to automatically do so on windows
too, but the biggest problem is my lack of knowledge. And when
I use pacman ... I don't really learn how things are.
So this brings me to my first request:
(1) Please don't use pacman as means to avoid teaching people
how compiling on windows works. I understand that you cater to
the average folks, which is perfectly fine. But I don't want
this to end in a state where EVERYONE doesn't really know how
to work WITHOUT pacman anymore. I really don't want to be
tied to any package manager. I assume one reason why pacman
was used was because the main "drivers" are arch users.
(Bootstrapping via pacman is fine; I am just referring mostly
to the "what comes afterwards" step.)
What I actually envision is something similar to LFS/BLFS, but
via msys2. Now before everyone runs away in shock! I don't mean
a full LINUX system on windows. What I mean is a system that
is usable, and that has been compiled (mostly) by the end user -
as said, the gtk-stack. (I want to get ruby-gtk3 to work on
windows as-is, without having to use WSL1. I can run the widgets
fine via WSL1+xming, and WSL2 makes this even easier so that
is ok.)
So this would be my second request:
(2) Please consider a "semi-advanced" parts of msys2, or
perhaps the github wiki or anywhere else, linked in from
the main README.md perhaps, where people can approach in
a step-by-step manner for compiling things on their own,
on windows. This is ok if it's written for "slightly advanced
beyond Average Joe"; and it does not have to be detailed
either! But it should be from someone who actually also did
this and ensured that this works.
Right now the main homepage states:
"Now you can call make or gcc to build software for Windows."
My hope is that this can be extended with some URL on the
homepage like:
"Check the advanced examples for more information about
this."
Then add the route /advanced to the homepage, or some other
fitting name, and showcase some examples, including the
URL for the tarball archive, and then extracting and compiling.
Once a few of these examples were shown, I think people may
be more likely to know how to work on windows too. (And once
they understand these steps, it'll be easier for them to
adjust. Right now I simply lack these points, and while
using pacman is ok, it just doesn't teach me anything
really. LFS/BLFS is great in one regards: teaching. It
really shows people what to do in order to have a full
working Linux system in the end. I love this aspect.)
I looked at the wiki e. g.
https://www.msys2.org/wiki/How-does-MSYS2-differ-from-Cygwin/
but there does not seem to be a "post-installation" step
or "advanced" examples or something like that.
Could perhaps one of you hero-devs consider showcasing
an example and add it to the wiki? Perhaps something
that is semi-difficult to build, such as libffi and
then glib or something like that.
ftp://sourceware.org/pub/libffi/libffi-3.3.tar.gz
https://www.msys2.org/wiki/How-does-MSYS2-differ-from-Cygwin/
Again - these are just examples, but I think it would be
useful for other people if someone could work through some
semi-advanced examples, just to show what to do after
one has installed msys2 already, and verified it works
(and I did that; I can compile just fine via native
GCC; I just don't really have any clue how to compile
typical GNU configure based systems on windows, or
cmake I suppose).
Anyway, thanks for reading. As said please feel free to
close this issue at any moment in time.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the main README.md and the linked MSYS2 wiki page to identify where post-installation guidance belongs. Done means documenting a step-by-step advanced example, such as extracting and compiling libffi or glib, and linking that guidance from the homepage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, ruby
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100