Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Portage & Programming
  • Search

Squeak/Pharo Smalltalk

Problems with emerge or ebuilds? Have a basic programming question about C, PHP, Perl, BASH or something else?
Post Reply
Advanced search
19 posts • Page 1 of 1
Author
Message
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

Squeak/Pharo Smalltalk

  • Quote

Post by manny15 » Sun Oct 23, 2011 11:57 pm

Some time ago, Squeak was removed from portage. I like Squeak, so I revived the ebuilds in my overlay https://bitbucket.org/erosa/erosa-overlay.

I took a different approach. I named the vm package squeakvm, and created packages for Pharo and Seaside images. I also added these packages into a new category called dev-smalltalk. I haven't bothered creating a Squeak image package, but it's doable.

Anyway, enjoy :)
Top
KAMIKAZE_
Guru
Guru
Posts: 309
Joined: Thu Oct 09, 2003 3:56 pm
Location: Riga, Latvia
Contact:
Contact KAMIKAZE_
Website

  • Quote

Post by KAMIKAZE_ » Sun Nov 20, 2011 12:48 am

How can I add/use it through layman?
-=[powered by Gentoo]=-
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

  • Quote

Post by manny15 » Sun Nov 20, 2011 2:35 am

The instructions are on the overlay's wiki.
  • emerge app-portage/layman
  • layman -o http://bitbucket.org/erosa/overlays/raw ... erlays.xml -a erosa-overlay
  • add "dev-smalltalk" to /etc/portage/categories. Note: This file may not initially exist on your system.
Top
penetrode
Apprentice
Apprentice
Posts: 286
Joined: Mon Dec 29, 2003 7:44 am
Location: Calgary, Alberta

  • Quote

Post by penetrode » Fri Nov 25, 2011 8:43 pm

I'm new to squeak, so forgive me if this question is a dumb one --

If there is no image package, does that mean I need to get one from another source in order for squeak to work? I am not sure I understand what the image does just yet...
Top
penetrode
Apprentice
Apprentice
Posts: 286
Joined: Mon Dec 29, 2003 7:44 am
Location: Calgary, Alberta

  • Quote

Post by penetrode » Fri Nov 25, 2011 8:46 pm

Also, the overlay -- at least as described in your command-line example -- does not seem to be working:
# layman -o http://bitbucket.org/erosa/overlays/raw ... erlays.xml -a erosa-overlay
* Overlay "erosa-overlay" does not exist.
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

  • Quote

Post by manny15 » Fri Nov 25, 2011 9:26 pm

There are three image packages in my overlay: pharo, seaside, and squeak.after installing any images, copy the images out to another folder then run the squeak vm with the image as the parameter.example: squeak pharo-1.3.img

What error do you get when installing the overlay?
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

  • Quote

Post by manny15 » Sat Nov 26, 2011 4:29 pm

I just realized you're new to Squeak. First, choose either the Squeak or Pharo Smalltalk implementations. Pharo is basically a next-gen Squeak. They both work fine, and what you learn from one will translate into the other. Each implementation has a "By Example" book. Download it and go through it to get started. It will explain the whole image concept, but in a nutshell, the image is a complete runtime and development environment. It's a lot like running an operating system under a VM such as qemu or Virtual Box. You can practically save and suspend running code, and bring it back up whenever and it will pick up where it left off. It's pretty awesome.

What my packages do is install the Squeak VM, which can run the Squeak and Pharo images, and the images themselves. For example, if you want to use Pharo, then

Code: Select all

emerge dev-smalltalk/pharo
This will go ahead and install the Squeak VM too.

The pharo package contains the following files:
/usr/lib/pharo/1.3/Pharo-1.3.changes.gz
/usr/lib/pharo/1.3/Pharo-1.3.image.gz
/usr/lib/pharo/1.3/PharoV10.sources
/usr/lib/squeak/4.4.7-2357/PharoV10.sources -> /usr/lib/pharo/1.3/PharoV10.sources

To use the Pharo image,
  • Create a folder
  • Copy the Pharo-1.3.changes.gz and Pharo-1.3.image.gz files to the folder
  • Use gunzip to decompress both files
  • Then run the image like this: squeak Pharo-1.3.image
Normally, you would also have to copy the PharoV10.sources file to the folder, but the Pharo package creates a symbolic link that should make this step unnecessary.
Top
penetrode
Apprentice
Apprentice
Posts: 286
Joined: Mon Dec 29, 2003 7:44 am
Location: Calgary, Alberta

  • Quote

Post by penetrode » Sat Nov 26, 2011 4:57 pm

manny15 wrote:There are three image packages in my overlay: pharo, seaside, and squeak.after installing any images, copy the images out to another folder then run the squeak vm with the image as the parameter.example: squeak pharo-1.3.img

What error do you get when installing the overlay?
The error was given above, but here it is again:

Code: Select all

# layman -o http://bitbucket.org/erosa/overlays/raw/tip/overlays.xml -a erosa-overlay 
* Overlay "erosa-overlay" does not exist.
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

  • Quote

Post by manny15 » Sun Dec 04, 2011 9:11 pm

I updated the URLs in the overlays.xml file to https. Here's the new command:

Code: Select all

layman -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml -a erosa-overlay
See if that works.
Top
penetrode
Apprentice
Apprentice
Posts: 286
Joined: Mon Dec 29, 2003 7:44 am
Location: Calgary, Alberta

  • Quote

Post by penetrode » Mon Mar 04, 2013 7:19 am

Is this overlay still maintained and working?

Code: Select all

# layman -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml -a erosa-overlay

 * Adding overlay,...
 * Exception: Overlay "erosa-overlay" does not exist.

 * CLI: Errors occurred processing action add
 * Exception: Overlay "erosa-overlay" does not exist.
Top
wcg
Guru
Guru
Posts: 588
Joined: Tue Jan 06, 2009 7:05 pm

  • Quote

Post by wcg » Mon Mar 04, 2013 11:15 am

What does this mean?
Create a folder
When I hear "copy", I think in terms of locations in a directory
tree in a filesystem. "Folders" are only a gui view on a filesystem.
The only time I create folders is in Firefox bookmarks (a gui view
on a file or collection of sqlite database entries that Firefox pretends
is a filesystem) or when I am installing security software on someone's
windows workstation.

I would expect that one specifies storage that persists across
reboots in terms of directory pathnames when installing
a language runtime and programming development environment
for that language on linux. ("Folders" are not a fundamental part
of the system.)
TIA
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

  • Quote

Post by manny15 » Tue Mar 05, 2013 3:38 am

Yes, the overlay still exists. Although I haven't touched it in a while. I just re-added the overlay using this command (as root).

Code: Select all

layman -a erosa-overlay -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml
The ebuilds install the squeak or pharo images but these Smalltalk implementations are like virtual machines, so each user needs his/her own copy of the images. That's what I meant by creating a folder. A folder is not required, I just figured it's a good practice. There used to be a utility that would set things up for users but I don't know what happened to it.

The best way to see what's in the overlay is to look at the repo's source code at https://bitbucket.org/erosa/erosa-overlay/src
Top
penetrode
Apprentice
Apprentice
Posts: 286
Joined: Mon Dec 29, 2003 7:44 am
Location: Calgary, Alberta

  • Quote

Post by penetrode » Wed Mar 06, 2013 5:37 am

manny15 wrote:Yes, the overlay still exists. Although I haven't touched it in a while. I just re-added the overlay using this command (as root).

Code: Select all

layman -a erosa-overlay -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml
The ebuilds install the squeak or pharo images but these Smalltalk implementations are like virtual machines, so each user needs his/her own copy of the images. That's what I meant by creating a folder. A folder is not required, I just figured it's a good practice. There used to be a utility that would set things up for users but I don't know what happened to it.

The best way to see what's in the overlay is to look at the repo's source code at https://bitbucket.org/erosa/erosa-overlay/src
Nope, it still isn't working:

Code: Select all

# layman -a erosa-overlay -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml

 * Adding overlay,...
 * Exception: Overlay "erosa-overlay" does not exist.

 * CLI: Errors occurred processing action add
 * Exception: Overlay "erosa-overlay" does not exist.
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

  • Quote

Post by manny15 » Wed Mar 06, 2013 11:56 am

Ok, I think the problem is the layman cache needs to be updated first. Try this:

Code: Select all

layman -f -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml
layman -a erosa-overlay -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml
Another way is to run

Code: Select all

layman -L -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml
This will list the overlays, (and you should see erosa-overlay) listed, and it will also update the cache. Then,

Code: Select all

layman -a erosa-overlay -o https://bitbucket.org/erosa/overlays/raw/tip/overlays.xml
should work.
Top
StormBytePP
Apprentice
Apprentice
User avatar
Posts: 154
Joined: Fri Feb 17, 2006 5:42 pm
Location: Spain
Contact:
Contact StormBytePP
Website

  • Quote

Post by StormBytePP » Wed Dec 17, 2014 3:35 pm

Sorry for necromancing an old thread, but can you update the overlay to reflect pharo3 and a seaside3.1 (or at least more recent than currently have in your overlay?)

I already have the prebuild downloaded from official pages, but I'd really like it to be compiled from my machine and have it installed as any other package, but they are very outdated.

Thanks in advance :)
Some people should use emerge brain on theirselves...
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

Pharo 3.0

  • Quote

Post by manny15 » Thu Dec 18, 2014 12:21 am

I've updated pharovm and the pharo image to 3.0.

Currently, the pharo package depends on the pharovm-bin package, so there's no compiling. The pharovm sources are not distributed in an archive. So I would have to change the ebuild to get the sources from git, and probably track the master branch since there are no release branches. Maybe one of these days I'll take a stab at making a source ebuild.

I didn't update the seaside ebuild because upstream complicated things. Besides downloading a zip file with mostly unnecessary files, their seaside 3.1 archive comes with Pharo 2 instead of 3.

You can install Seaside 3.1 within the Pharo 3 image. Assuming my overlay is already setup and synchronized on your computer (see https://bitbucket.org/erosa/erosa-overlay/wiki/Home)...
Install and run Pharo 3.0
  1. (root)# emerge pharo
  2. (non-root)$ mkdir ~/pharo
  3. (non-root)$ cd ~/pharo
  4. (non-root)$ cp /usr/share/pharo/Pharo-3.0.image.gz /usr/share/pharo/Pharo-3.0.changes.gz ./
  5. (non-root)$ gunzip Pharo-3.0.changes.gz
  6. (non-root)$ gunzip Pharo-3.0.image.gz
  7. (non-root)$ pharo Pharo-3.0.image
Within the Pharo image...
Install Seaside 3.1
  1. Right-click on background and select Workspace
  2. In the workspace copy-paste:
    Gofer new
    url:'http://www.smalltalkhub.com/mc/Seaside/ ... tions/main';
    package: 'ConfigurationOfSeaside3';
    load.
    ((Smalltalk at: #ConfigurationOfSeaside3) project version: #stable) load.
  3. Select all the text pasted into the workspace.
  4. Right-click and select Do it
  5. When install completes, right-click on background and select Tools->Seaside Control Panel
  6. Right-click within the top half of the Seaside Control Panel and select Add adapter
  7. Select ZnZincServerAdapter
  8. Click on the Start button
  9. Right-click on the background and select Save
  10. Now that Seaside is running, go to http://localhost:8080
Top
StormBytePP
Apprentice
Apprentice
User avatar
Posts: 154
Joined: Fri Feb 17, 2006 5:42 pm
Location: Spain
Contact:
Contact StormBytePP
Website

  • Quote

Post by StormBytePP » Fri Dec 26, 2014 8:23 pm

Thank you, will try it when I have some time.

I am not expert in smalltalk (yet) but I've been reading about Seaside and magritte and I am very impressed.

On the other hand, I was told that by compiling the sources it could gain some more speed, specially if it can be compiled with pthread support, because the only thing I am missing is that it runs only in 1 core, which per expensive operations (like factorial for example) turns it not that optimal.

If you decide to do that I will be glad to test compilation :)
Some people should use emerge brain on theirselves...
Top
KAMIKAZE_
Guru
Guru
Posts: 309
Joined: Thu Oct 09, 2003 3:56 pm
Location: Riga, Latvia
Contact:
Contact KAMIKAZE_
Website

  • Quote

Post by KAMIKAZE_ » Fri Apr 13, 2018 7:52 pm

still no ebuild?
-=[powered by Gentoo]=-
Top
manny15
Guru
Guru
User avatar
Posts: 471
Joined: Sun Dec 01, 2002 11:26 pm
Location: USA

  • Quote

Post by manny15 » Fri Apr 20, 2018 9:14 pm

I no longer use Smalltalk nor Gentoo. Hence I won't be developing the ebuild any more.
Top
Post Reply

19 posts • Page 1 of 1

Return to “Portage & Programming”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic