Gentoo Archives: gentoo-embedded

From: Ned Ludd <solar@g.o>
To: Jason Cooper <gentoo@××××××××××.net>
Cc: Natanael Copa <mlists@××××××.org>, gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] CF Sub-Package Mgmt. was Re: hardened uclibc gentoo stages
Date: Wed, 25 Aug 2004 16:10:13
Message-Id: 1093450199.1280.1484.camel@simple
In Reply to: Re: [gentoo-embedded] CF Sub-Package Mgmt. was Re: hardened uclibc gentoo stages by Jason Cooper
1 On Tue, 2004-08-24 at 09:02, Jason Cooper wrote:
2 > Natanael Copa (mlists@××××××.org) scribbled:
3 > > On Mon, 23 Aug 2004 21:36:18 -0400
4 > > Jason Cooper <gentoo@××××××××××.net> wrote:
5 > > > I come from a commercial engineering/development house. We like
6 > > > version control (Well, someone does, not sure who). We do one-off's,
7 > > > applications, production items, mil-spec, LEO, and other stuff. (yeah,
8 > > > I know, great sales pitch :)
9 > >
10 > > We use our stuff non commercial. We don't intend to make money out of
11 > > every version. We want to run a network and we dislike downtimes.
12 >
13 > From what I understand (I do R&D support right now), we don't make money
14 > off of individual versions either. More support/services/products
15 > oriented (govt contractor). I can fully agree with disliking downtimes.
16 >
17 > > > I can see where one would want to be able to add packages on the
18 > > > fly to say a wrt54g or an nslu2. Does it seem viable to do that from
19 > > > a host system (faster compiles, more space), and generate a new images
20 > > > each time? Or try to unpack the package on the fly on the target?
21 > > > I'm not sure I see the viability of the latter wrt diskless systems.
22 > >
23 > > We are running harddisk-less bering routers (when we get all of them up
24 > > and running there will probably be over 200 of them) Those are pulling
25 > > runtime packages on the fly. Even if we do that, we need to reboot
26 > > during upgrades. This year there have been a numbers of upgrades and it
27 > > would be very nice to prevent the reboots. It is possible.
28
29 indeed I don't think any of us want or are willing to reboot for simple
30 upgrades.
31
32 >
33 > I think one of questions I have regards systems that have flash and ram
34 > as their only means of storage. It's my understanding that the initrd
35 > image must be written to the flash as a whole. Of course, any changes
36 > to the running system would work, but would not be persistent. In this
37 > case, a package system may not be desirable. Doesn't mean it shouldn't
38 > be an option, just that there should be some means of upgrading the
39 > image on the host and then flashing the target(s). Also, target package
40 > management tools should be optional.
41
42 squashfs + jffs2 make a nice combo which you can build fail safe systems
43 with. One of the things that really impressed me about the OpenWrt
44 project was the use of these file systems together.
45
46 The merits of jffs2 on a compact flash are not clear however.
47 The arguments seem to go both ways of (good vs bad)
48 A gentoo user yoann.at.prelude-ids.dot.org (http://www.prelude-ids.org/)
49 is doing a trial run of such a setup on compact flash.
50
51 >
52 > I think both approaches have merit.
53 >
54 > Hypothetical build process:
55 >
56 > # emerge crossdev
57 >
58 > # crossdev --arch=powerpc ...
59
60 Unfortunately the crossdev does not support uClibc yet.
61 I've started on a patch for it, but somebody else will have to write one
62 missing & needed function to make all the glue work.
63
64 http://dev.gentoo.org/~solar/toolchain/crossdev-uclibc-20040802.diff
65 The needed function is InstallUClibcCore()
66
67 If anybody else has an interest is making crossdev uClibc aware here is
68 what said function can be based on.
69 http://uclibc.org/cgi-bin/cvsweb/toolchain/gcc-3.3.x/make/uclibc.mk?rev=1.7&view=auto
70
71
72 >
73 > # export EMBEDDED="powerpc" ??? pulled out of thin air :)
74 >
75 > build the kernel... then
76 >
77 > # export E_ROOTFS=/opt/powerpc/rootfs ??? same here...
78 >
79 > # emerge system (this will go to $E_ROOTFS, for $EMBEDDED)
80 >
81 > emerge individual packages (ssh, nfs, ntpd, ipkg-tools, etc)
82 >
83 > add your app (if needed).
84 >
85 > edit rc script for app.
86 >
87 > configure everything.
88 >
89 > disconnect loopback file (rootfs), compress
90 >
91 > flash.
92 >
93 >
94 > Do I have the right idea? It almost looks like a separate
95 > 'portage/embedded/' tree may be necessary so package maintainers
96 > aren't bothered with embedded issues. The embedded tree would
97 > essentially be ebuild wrappers pulling extra patches, etc. Maybe
98 > '.e_ebuild' or '.eebuild'?
99
100 I really really don't want to go that route. oe exist for that.
101
102 >
103 > I'm sure a lot of this has already been covered... Unfortunately, I
104 > can't find the archives to browse. :(
105
106 http://marc.theaimsgroup.com/?l=gentoo-embedded
107
108 >
109 > Cooper.
110 >
111 > --
112 > gentoo-embedded@g.o mailing list
113 --
114 Ned Ludd <solar@g.o>
115 Gentoo (hardened,security,infrastructure,embedded,toolchain) Developer

Attachments

File name MIME type
signature.asc application/pgp-signature