Linux installation

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Linux installation

Sean P. DeNigris
Administrator
I know we've struggled with this over the years, especially with the 32-bit
libs. But now we have a lot of infrastructure that seems to be successfully
building/running the VM on various flavors - OBS, travis, etc. Shouldn't one
(or all) of these CI tools reliably have the latest installation script
including the 32-bit libs? It seems like we should just link to one of these
sources rather than depend on someone updating a text file, no?

Is the following just such a source?
https://github.com/pharo-project/pharo-vm/blob/master/scripts/setup-ubuntu.sh

Also, is OBS working? For example, the following gives a 404:
https://download.opensuse.org/repositories/devel:/languages:/pharo/xUbuntu_16.04

Finally, if someone is not too particular about which Linux flavor to use on
their (probably headless) server, what is the easiest to install/most stable
for Pharo?





-----
Cheers,
Sean
--
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html

Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Linux installation

Stephane Ducasse-3
Hi sean

Yes we should. Now I think that the community does not really realise
how much work it is to produce Pharo. And we cannot and will not do everything.
At the end of the day, if pharoers are not able to give 30 min of their time to
improve then it will stay like that.
I mean if marcus, me and other spent time reviewing, fixing typos on the web
then it means that object-centric debugger will not show up.
You see we have only a limited amount of resources.
So this is good to see all these wishes and needs. I have plenty of them too.
But at the end of the day when we do the check if pharoers do not contribute
then we will have less done. This is as simple as that.

Stef


On Fri, Feb 23, 2018 at 5:41 AM, Sean P. DeNigris <[hidden email]> wrote:

> I know we've struggled with this over the years, especially with the 32-bit
> libs. But now we have a lot of infrastructure that seems to be successfully
> building/running the VM on various flavors - OBS, travis, etc. Shouldn't one
> (or all) of these CI tools reliably have the latest installation script
> including the 32-bit libs? It seems like we should just link to one of these
> sources rather than depend on someone updating a text file, no?
>
> Is the following just such a source?
> https://github.com/pharo-project/pharo-vm/blob/master/scripts/setup-ubuntu.sh
>
> Also, is OBS working? For example, the following gives a 404:
> https://download.opensuse.org/repositories/devel:/languages:/pharo/xUbuntu_16.04
>
> Finally, if someone is not too particular about which Linux flavor to use on
> their (probably headless) server, what is the easiest to install/most stable
> for Pharo?
>
>
>
>
>
> -----
> Cheers,
> Sean
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
>

Reply | Threaded
Open this post in threaded view
|

Re: Linux installation

Sven Van Caekenberghe-2
In reply to this post by Sean P. DeNigris


> On 23 Feb 2018, at 05:41, Sean P. DeNigris <[hidden email]> wrote:
>
> Finally, if someone is not too particular about which Linux flavor to use on
> their (probably headless) server, what is the easiest to install/most stable
> for Pharo?

Ubuntu Server 16.04.3 LTS

https://www.ubuntu.com/download/server

Most used, best supported, stable.

I know not everybody will agree, and that is fine. There are 100s if not 1000s of Linux distros out there. Unless you know very well what you are doing and why, this is the safe choice. Else you can end up on your own, we can't support them all, and you won't find any other users willing to help you.

Sven
Reply | Threaded
Open this post in threaded view
|

Re: Linux installation

NorbertHartl
In reply to this post by Sean P. DeNigris


> Am 23.02.2018 um 05:41 schrieb Sean P. DeNigris <[hidden email]>:
>
> I know we've struggled with this over the years, especially with the 32-bit
> libs. But now we have a lot of infrastructure that seems to be successfully
> building/running the VM on various flavors - OBS, travis, etc. Shouldn't one
> (or all) of these CI tools reliably have the latest installation script
> including the 32-bit libs? It seems like we should just link to one of these
> sources rather than depend on someone updating a text file, no?
>
> Is the following just such a source?
> https://github.com/pharo-project/pharo-vm/blob/master/scripts/setup-ubuntu.sh
>
> Also, is OBS working? For example, the following gives a 404:
> https://download.opensuse.org/repositories/devel:/languages:/pharo/xUbuntu_16.04
>
> Finally, if someone is not too particular about which Linux flavor to use on
> their (probably headless) server, what is the easiest to install/most stable
> for Pharo?

OBS should work, the process is in place. This effort got killed slightly because it was not possible to get the current vm sources in a shape you can feed into a process. First it was that pharo-vm was different to opensmalltalk-vm. Now I do not remember but there is still a problem. Esteban can tell.
For me this is sad because the way the vm is implemented and managed it seems neither easy to collaborate nor easy to consume the result. And that is needed if you need to feed that in a process like linux packaging. I find this really important, I even spend money on it to be done. But…. we will see. I know Holger will care to update OBS if the process allows him to do. But he got stuck every single time he tried to do it.

For the choice of linux this is either business or religion dependent. If you need professional support for the linux you should choose one of the big ones, I think this is ubuntu or redhat. They all have long term support versions so you don’t need to follow the crowd every day.

If you need to have multiple different pharos on your machine you might need to go virtual. Having pharo encapsulated in a docker image feels natural and you can be sure that system-wise you can pharo4, pharo5-32bits, pharo6-32bits, pharo6-64bits all in parallel without disturbance. Basically you need not much more than this Dockerfile

<snip>
#
# Pharo6 Dockerfile
#

FROM ubuntu:16.04

# Add opensuse repository and install pharo6 binary from there
RUN \
  apt-get update && \
  apt-get install -y wget curl unzip inetutils-ping && \
  wget -q http://download.opensuse.org/repositories/devel:/languages:/pharo:/stable/xUbuntu_16.04/Release.key -O- | apt-key add - && \
  echo 'deb http://download.opensuse.org/repositories/devel:/languages:/pharo:/stable/xUbuntu_16.04/ ./' > /etc/apt/sources.list.d/pharo6.list && \
  dpkg --add-architecture i386 && \
  apt-get update && \
  apt-get install -y pharo6-32 pharo6-sources-files && \
  rm -rf /var/lib/apt/lists/*

RUN mkdir -p /pharo-vm/32 \
    && cd /pharo-vm/32 \
    && curl get.pharo.org/vm70 | bash
</snip>

It creates a pharo docker image (mine is called pharo6-32) with the OBS linux vm installed and the pharo7 vm downloaded so you can try which one is better. Applications with pharo I do with this

<snip>
FROM pharo6-32

RUN apt-get update && apt-get install -y curl

COPY Project.image start.st /opt/

# Define working directory.
WORKDIR /opt

# Define default command.
#CMD "/usr/bin/pharo6-32" "--mmap" "64m" "/opt/Project.image" "--no-default-preferences" "st" "/opt/start.st"
CMD "/pharo-vm/32/pharo" "--mmap" "64m" "/opt/Project.image" "--no-default-preferences" "st" "/opt/start.st"

EXPOSE 3000
</snip>

So if you have the pharo image as Project.image in the same directory as the Dockerfile then this image is copied into the docker image and when you start it is called.

Hope this helps,

Norbert

Reply | Threaded
Open this post in threaded view
|

Re: Linux installation

Sean P. DeNigris
Administrator
Steph, I agree completely. I've spent many hours documenting and researching
ways to make Linux installation easier/better - and I don't even use Linux!
It was only that the steady stream of questions on the MLs makes it seem
fairly important.

Sven, thanks - that's exactly what I was looking for. In my current case,
it's just for CI because Gitlab.com doesn't support OS X targets out of the
box, so I really have no attachment to any flavor.

Norbert, that's great, thanks. I'll have to look and see how to tie a Pharo
Docker image into the SmalltalkCI infrastructure.

Finally, I notice that the following specify different sets of libs. Are
they out of sync or for different use cases?
-
https://github.com/pharo-project/pharo-vm/blob/master/scripts/setup-ubuntu.sh
- http://pharo.org/gnu-linux-installation (Ubuntu section)



-----
Cheers,
Sean
--
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html

Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Linux installation

Stephane Ducasse-3
Hi sean

how do we record what you did because it should not be lost.

Stef

On Fri, Feb 23, 2018 at 2:04 PM, Sean P. DeNigris <[hidden email]> wrote:

> Steph, I agree completely. I've spent many hours documenting and researching
> ways to make Linux installation easier/better - and I don't even use Linux!
> It was only that the steady stream of questions on the MLs makes it seem
> fairly important.
>
> Sven, thanks - that's exactly what I was looking for. In my current case,
> it's just for CI because Gitlab.com doesn't support OS X targets out of the
> box, so I really have no attachment to any flavor.
>
> Norbert, that's great, thanks. I'll have to look and see how to tie a Pharo
> Docker image into the SmalltalkCI infrastructure.
>
> Finally, I notice that the following specify different sets of libs. Are
> they out of sync or for different use cases?
> -
> https://github.com/pharo-project/pharo-vm/blob/master/scripts/setup-ubuntu.sh
> - http://pharo.org/gnu-linux-installation (Ubuntu section)
>
>
>
> -----
> Cheers,
> Sean
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
>

Reply | Threaded
Open this post in threaded view
|

Re: Linux installation

Sean P. DeNigris
Administrator
Stephane Ducasse-3 wrote
> how do we record what you did because it should not be lost.

The documentation part was recorded when we reorganized the installation
instructions on the Pharo website. The OBS stuff I didn't get very far with
even though I spent a lot of time. The current effort seems to have
surpassed what Esteban and I did and be led by a more knowledgeable person
lol



-----
Cheers,
Sean
--
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html

Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Linux installation

EstebanLM


> On 24 Feb 2018, at 16:31, Sean P. DeNigris <[hidden email]> wrote:
>
> Stephane Ducasse-3 wrote
>> how do we record what you did because it should not be lost.
>
> The documentation part was recorded when we reorganized the installation
> instructions on the Pharo website. The OBS stuff I didn't get very far with
> even though I spent a lot of time. The current effort seems to have
> surpassed what Esteban and I did and be led by a more knowledgeable person
> lol

heh… Holger took over and made it work ;)
now, we need to make it the standard for linux distributions… and that will require still a bit more effort :)

Esteban

>
>
>
> -----
> Cheers,
> Sean
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
>