Building Minix without an internet connection

71 views
Skip to first unread message

Patrick McC^very

unread,
Apr 27, 2017, 1:35:21 PM4/27/17
to minix3
Hi Everyone

My Minix installation seems to have an issue with the network driver. I am on 3.5 RC 5.

David's network stack might not fix it but I wanted to try his version before posting to the list about my driver.

I am trying to build Minix myself for the first time.

I used ./build.sh build

Things ran fine until texinfo. It wants internet access for some sort of update, is there a way to disable this? Is there a way to build Minix with no real working internet connection?

P.S if you are curious I am using the Intel Gigabye driver( or at least I think so, I need to double check). I can do pkgin update but it will fail 20X or more. I do have a trickle of network activity. It also starts up at a few kilobytes and then slows down and stalls.

Thanks-Patrick

Jean-Baptiste Boric

unread,
Apr 28, 2017, 3:26:00 AM4/28/17
to minix3
Hi,

The MINIX 3 source repository does not contain any GPL source code by policy, that means GPL software necessary to build MINIX like texinfo or binutils are downloaded from minix3.org and extracted as part of the build process. This also makes the repository lighter as a side-effect.

The download and extraction part are done with shell scripts called fetch.sh, you can download the packages manually and transfer them if your build machine doesn't have internet connectivity ; fetch.sh will pick them up and extract them. Place each package in the same directory as its corresponding fetch.sh script.

Here's the list of scripts in my source tree:

external/gpl2/gmake/fetch.sh
external/gpl3/binutils/fetch.sh
external/gpl3/gcc/fetch.sh
external/lgpl3/gmp/fetch.sh
external/lgpl3/mpc/fetch.sh
external/lgpl3/mpfr/fetch.sh
gnu/dist/fetch.sh

Patrick McC^very

unread,
Apr 28, 2017, 7:41:49 AM4/28/17
to minix3
Hi Jean_Baptiste

Yet another very helpful post, thanks!

Would you like to be create a patch that could be used to modify the fetch scripts. I could create a GPL CD and the fetch scripts could load from it.

This might be faster for people that rebuild a lot and lighter on the servers too.

-Patrick

Patrick McC^very

unread,
Apr 28, 2017, 8:48:33 AM4/28/17
to minix3
Oh ! I am just getting to the fetch scripts now. As you were saying they check first for existence. So at most I would need to make a CD , with tiny script that hat copied them to the right directories....

Jean-Baptiste Boric

unread,
Apr 28, 2017, 8:59:58 AM4/28/17
to minix3
Oh ! I am just getting to the fetch scripts now. As you were saying they check first for existence. So at most I would need to make a CD , with tiny script that hat copied them to the right directories....

Yes.

Also, I don't think this particular situation warrants a patch since it is a rare enough use case and solving it by hand isn't much of a chore. However, I do think documenting this on the wiki would be a good idea if other people try to make offline builds in the future...

Lionel Sambuc

unread,
Apr 28, 2017, 9:23:28 AM4/28/17
to min...@googlegroups.com
Hi all,


If I may add, the currently used GPL software can be split in two categories:

1. Always used:
  - binutils
      * texinfo as a dependency to build binutils

2. Used currently only for ARM builds or intel builds if explicitly requested
   - GCC
      * mpfr 
      * gmp 
      * mpc
      * gmake (this might also be a requirement for binutils, not sure)

GCC is on its way out, at least as far as I am concerned. I hope that in the short to medium term we will be able to get rid of binutils as well, there are only a couple of files which require gas, about a dozen or so.

The main reason for me is to have a complete system free of any GPL dependency. This is a very personal goal of mine. I believe this would make it much simpler to use minix3 in contexts where GPL introduces risks.

All of the above is why I have not really tried so far to improve the situation with regards to those fetch scripts, as I hope to simply see their need to go away in the first place.

The last tool will be "git", I hope we will see one day a bsd implementation.


Kind regards,

Lionel
--
Sent from my phone
--
You received this message because you are subscribed to the Google Groups "minix3" group.
To unsubscribe from this group and stop receiving emails from it, send an email to minix3+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Patrick McC^very

unread,
Apr 28, 2017, 5:49:52 PM4/28/17
to minix3
Hi Lionel

I am just wondering.... How do you feel about LGPL code? It's not BSD but it's similar in that the end user can use it in free software or not.

-Patrick

Lionel Sambuc

unread,
Apr 29, 2017, 12:47:12 AM4/29/17
to min...@googlegroups.com
The reason we have a strict policy of not including GPL code with the sources is the infection behavior of that license.

To my knowledge, it has not been proven in front of a judge that including GPL code in a subfolder was enough to stop the disease from spreading to the rest of the code included in the same repository.

The GPL license doesn't make a distinction, and is clear that everything in the same repository becomes automatically GPL.

I am not sure if the LGPL is totally exempt of that property, so personally, I would stay away of LGPL code as well.

Such code in the context of the package manager is not a problem, the issue is only not to turn the Minix sources into GPL code.



Kind regards,

Lionel
--
Sent from my phone
--
Reply all
Reply to author
Forward
0 new messages