FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo Embedded

 
 
LinkBack Thread Tools
 
Old 06-10-2010, 10:59 AM
Marcus Priesch
 
Default tzdata & friends

Hi Guys,

One annoying thing i encountered in the past when using gentoo on a
linux box was staying up to date with packages (like timzonedata &
pytz).

when you want to stay in sync with the portage tree - you also have to
update a lot of other packages from time to time ... which alters the
system and possibly needs other work to be involved to keep it
running ... in the end you have to test the whole behaviour again and
the customer gets a "new" system - which is lot of work and hard to
argument

when you dont update, timezonedata could be out of date ... and the
customer discovers that DST change did not happen correctly ... which is
also hard to argument

so basically i am searching for a solution where i can update "only"
relevant packages from time to time (like timezonedata) but leave the
rest of the system untouched ... customers boxes are running in a
private lan so security is not really a concern

currently the only way i can think of is to maintain a private portage
tree and update packages selectively - as long as the dependencies dont
require more ... are there any other possibilities ?!? how are you
handling such situations ?!?

the other question is on distributing the packages to the boxes:

in the past i had a full gentoo system where i updated and compiled and
rsynced selectively to the boxes - but with full dev environment which
was clearly a waste of storage space, time and bandwith.

currently i have one --root created and stripped down environment which
i rsync to the boxes (without gcc, portage tree, kernel sources) ...
plus i need a gentoo system for building where i merge change into the
portage tree from time to time ...

the complexity of this is why i took a look at debian/ubuntu for this
kind of task ... but ... for me it's not an option as it's tooo
inflexible.

after all i should come up with a solution where the customer can do the
update on its own ...

so any ideas and/or discussion would be very welcome !!!

regards,
marcus.
 
Old 06-11-2010, 08:30 AM
Sven Rebhan
 
Default tzdata & friends

Hey!

> tree and update packages selectively - as long as the dependencies dont
> require more ... are there any other possibilities ?!? how are you
> handling such situations ?!?

Hmmm, why don't you just update packages selectively like

emerge -u tzdata <other packages you want updated>

instead of updating everything? Note: leave out the --deep option.
I did this for years on my desktop machine and only updated world
from time to time. Furthermore, you can mask package versions in
$ROOT/etc/portage/package.mask if you really have something
you want to ignore.

> currently i have one --root created and stripped down environment which
> i rsync to the boxes (without gcc, portage tree, kernel sources) ...
> plus i need a gentoo system for building where i merge change into the
> portage tree from time to time ...
> [...]
> after all i should come up with a solution where the customer can do the
> update on its own ...

Ummm, the way I (and others) do it is building binpkgs in the
cross-compile environment and then update the embedded
system(s) using these binpkgs. This way your customer can
update from your FTP/HTTP/... binpkg server with
emerge -ug <packages>. The only thing you have to make
sure is, you either mask all package you don't want them to
update or to provide all updateable packages as binaries.

You might want to have a look at
http://gentoo.mindzoo.de
http://git.overlays.gentoo.org/gitweb/?p=proj/embedded-cross.git;a=summary

even though the documentation is a bit outdated. *hint*

Regards,

Sven

P.S.: Maybe you also want to join #gentoo-embedded on freenode!?!
 
Old 06-11-2010, 03:15 PM
Marcus Priesch
 
Default tzdata & friends

Hi Sven,

Am Freitag, den 11.06.2010, 10:30 +0200 schrieb Sven Rebhan:
> Hmmm, why don't you just update packages selectively like
>
> emerge -u tzdata <other packages you want updated>

yes, but arent chances great that over time ther needs to be a major
e.g. python upgrade as the old version just disappeared from the portage
tree ?!?

> instead of updating everything? Note: leave out the --deep option.
> I did this for years on my desktop machine and only updated world
> from time to time. Furthermore, you can mask package versions in
> $ROOT/etc/portage/package.mask if you really have something
> you want to ignore.

yes, i know - but same thing as above ... when kernel trees disappear in
the portage tree ... you need to upgrade anyway ... thats why i thought
of having a seperate portage tree managed ...

> Ummm, the way I (and others) do it is building binpkgs in the
> cross-compile environment and then update the embedded
> system(s) using these binpkgs. This way your customer can
> update from your FTP/HTTP/... binpkg server with
> emerge -ug <packages>. The only thing you have to make
> sure is, you either mask all package you don't want them to
> update or to provide all updateable packages as binaries.

yes but you need a portage tree - and a sync'ed portage tree on the
clients to install binpkgs, or ?!?

> You might want to have a look at
> http://gentoo.mindzoo.de
> http://git.overlays.gentoo.org/gitweb/?p=proj/embedded-cross.git;a=summary

thanks a lot - i will give it a try

> even though the documentation is a bit outdated. *hint*



> P.S.: Maybe you also want to join #gentoo-embedded on freenode!?!

yes, not now - as i must leave ... but maybe next week ...

however, things turned out that i need to have the complete "system"
target on my --root installed rootfs (as i need some c python package
which wants to compile itself ...

and, yes, i love the idea of having a script running for a couple of
hours to create a virgin rootfs out of nothing ))

regards,
marcus.
 
Old 06-11-2010, 07:57 PM
Marcus Priesch
 
Default tzdata & friends

Hi Sven,

another point i forgot to mention ...
Am Freitag, den 11.06.2010, 10:30 +0200 schrieb Sven Rebhan:
> Hmmm, why don't you just update packages selectively like
>
> emerge -u tzdata <other packages you want updated>
>
> instead of updating everything?

when i do it this way - syncing portage tree and updating selectively -
i am not able to reproduce the entire build ... which - for me - is a no
go ...

anyone any ideas on this ?!?!

thats why i wanted to use ubuntu lts - it's maintained with bug fixes
for five years and doesnt change versions ... but as all of you might
agree ... it's a no-go for other reasons

greets,
marcus.
 
Old 06-14-2010, 09:52 AM
Sven Rebhan
 
Default tzdata & friends

2010/6/11 Marcus Priesch <marcus@priesch.priv.at>:
> when i do it this way - syncing portage tree and updating selectively -
> i am not able to reproduce the entire build ... which - for me - is a no
> go ...

Well, if you want to keep versions stable for years you might want to
maintain an own portage tree and mount this via e.g. NFS on the
clients. To reproduce those builds you just need also to save the
versions of your build and do

for p in $(cat mypackagelist); do emerge =$p; done

However, you need to make sure that all source tarballs are avail
for years, which might be a problem as well. Furthermore, newer
versions of packages you _need_ to update (like your tzdata)
will probably require newer dependencies as well...

> thats why i wanted to use ubuntu lts - it's maintained with bug fixes
> for five years and doesnt change versions ... but as all of you might
> agree ... it's a no-go for other reasons

I really think keeping versions stable for years and backporting fixes
is a lot of work and you need to make sure you have the resources
to maintain an own portage tree and backports of important fixes.


Sven
 

Thread Tools




All times are GMT. The time now is 01:20 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org