WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: SCM Basics  (Read 144441 times)

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #60 on: February 19, 2012, 08:47:23 AM »
Akane-

Yes, they can be used together, as the scm is designed no to collide with things in the usual filesystem outside of /apps, or /opt if writable space is needed.

Offline uggla

  • Sr. Member
  • ****
  • Posts: 438
Re: SCM Basics
« Reply #61 on: February 19, 2012, 01:21:21 PM »
Actually, as stated in the release candidate thread, we are no longer allowing tcz's to be dependencies of scm's.  It will get a little tricky for things that, say, need dbus, but Apple includes dbus in their self contained apps from what I understand, so it can be done.  In fact, if not allowing tczs as dependencies, we almost don't need a dep file since something like gtk2.scm or gtk3.scm can just be mentioned in the info file.

Abiword-cde.scm still has cde.tcz as dependency.

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #62 on: February 19, 2012, 02:14:15 PM »
Thanks, I will include the cde binary with them.

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #63 on: February 19, 2012, 09:32:24 PM »
Actually, I will drop the remaining one or two cde scm's as cde is a virtualization and sort of a chroot, great for it's purposes but since I can convert tcz's into scm's natively, I would rather stick with that route.

But the cde.tcz extension of course remains and it's use encouraged if you want to zip up an app and run it on, say, Debian stable.

Offline bmarkus

  • Administrator
  • Hero Member
  • *****
  • Posts: 7183
    • My Community Forum
Re: SCM Basics
« Reply #64 on: February 21, 2012, 01:57:48 PM »
thunderbird installs in its own directory /usr/local/thunderbird so it can be put into an SCM. However it need dependencies like gtk2, dbus, openssl and few others, so not a real SCM can be achieved. I'm not sure what benefits SCM would bring over TCZ.
Béla
Ham Radio callsign: HA5DI

"Amateur Radio: The First Technology-Based Social Network."

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #65 on: February 21, 2012, 02:23:37 PM »
I will give thunderbird a shot soon, as openssl, gtk2, and such is no issue to either contain or use the gtk2.scm as a dep.  The problem I am running into with some apps is a self contained dbus.  At least when converting existing tczs, actually building the package from scratch may alleviate that issue.

transmission-gtk3 uses dbus well when dbus is a tcz.  There is a simple way around not having tcz's as deps of scms in this case, perhaps by adding the below to the startup script that would install and start dbus if needed:

if [ ! -f /usr/local/tce.installed/dbus ]; then
  su tc -c "tce-load -i dbus.tcz" || su tc -c "tce-load -iw dbus.tcz"
fi

if  [ "$(/usr/local/etc/init.d/dbus status)" != "1" ]; then
  /usr/local/etc/init.d/dbus start
fi

I am not on TC so I can't verify the correctness of that, but that is a general idea.  I am still pondering on how to handle dbus or similar things in the self contained apps.

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #66 on: February 22, 2012, 09:41:28 PM »
Thunderbird.scm is uploading now, depends on gtk2.scm.  Dbus is optional, so noted in the info file to start it if desired, but the needed libs to run are included.

Offline bmarkus

  • Administrator
  • Hero Member
  • *****
  • Posts: 7183
    • My Community Forum
Re: SCM Basics
« Reply #67 on: February 28, 2012, 03:37:11 AM »
Google's GO Language compiler creates a single selfcontained executable which fits nicely to SCM. Of course for new developments.

Language is interesting and efficient, worth to take a look at http://golang.org/
Béla
Ham Radio callsign: HA5DI

"Amateur Radio: The First Technology-Based Social Network."

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #68 on: February 28, 2012, 11:15:58 AM »
I will take a look at it soon, but of course anyone is welcome to get to it first.  I am unfamiliar with Go, so I would have to learn a little to be able to test the results.

Offline bmarkus

  • Administrator
  • Hero Member
  • *****
  • Posts: 7183
    • My Community Forum
Re: SCM Basics
« Reply #69 on: February 28, 2012, 11:33:54 AM »
Go is an interesting animal. In many aspects it looks an interpreted language like Python with nics data structures and and extensive module library. Of cource there are not onéy similarities. But you will find it familiar in a short time.

Documentation is good generally and mainly it is targeting LINUX, next is WINDOWS. Less developed is the ARM version.

There is a very active community also.
Béla
Ham Radio callsign: HA5DI

"Amateur Radio: The First Technology-Based Social Network."

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11621
Re: SCM Basics
« Reply #70 on: March 01, 2012, 12:35:56 PM »
Hi Jason W
In case it's of interest,  lilypond-2.12.2.tcz  is practically an SCM already. Except for a dozen files installed in
/usr/local/bin , everything else is installed in  /home/tc/lilypond  and it has no dependencies. This is not a
request for an extension, just something I happened to notice.

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #71 on: March 01, 2012, 08:03:39 PM »
Thanks Rich, I will look into porting it.

Offline vinnie

  • Hero Member
  • *****
  • Posts: 1187
  • HandMace informatic works
Re: SCM Basics
« Reply #72 on: March 02, 2012, 03:24:38 AM »
I know some applications that work this way, but what if it save the data in the same directory where it is?

Offline Jason W

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 9730
Re: SCM Basics
« Reply #73 on: March 03, 2012, 08:23:26 PM »
Looking at lilypond.tcz, if there ever was a simple and solid conversion of a tcz to scm, this one is it.

I aim to get it uploaded tonight.

Offline Lee

  • Hero Member
  • *****
  • Posts: 645
    • My Core wiki user page
Re: SCM Basics
« Reply #74 on: March 03, 2012, 08:42:27 PM »
Slightly O.T., but speaking of lilypond - I was running UBC Logo a while back and it required some little library that was only to be found (in the repo) in the lilypond extension.  It wasn't prohibitive, but it seemed a shame to download the entire (20 MB ? - I'm not on my Core machine right now to check) just for that one library... any chance of seeing lilypond refactored a bit?  I'll get on my Core machine in an hour or so and get my details straight.
32 bit core4.7.7, Xprogs, Xorg-7.6, wbar, jwm  |  - Testing -
PPR, data persistence through filetool.sh          |  32 bit core 8.0 alpha 1
USB Flash drive, one partition, ext2, grub4dos  | Otherwise similar