[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openembedded-architecture
Subject:    [Openembedded-architecture] Introducing yb - a new tool for Yocto environment setup/management
From:       "Chris Laplante via lists.openembedded.org" <chris.laplante=agilent.com () lists ! op
Date:       2022-08-03 18:59:33
Message-ID: DM8PR12MB5430EE07C436C3E6CE281EEF8B9C9 () DM8PR12MB5430 ! namprd12 ! prod ! outlook ! com
[Download RAW message or body]

Hi all,

Today I'm excited to publish a tool I've been developing internally for abo=
ut a year now. It is called 'yb', and you can think of it like a cross betw=
een kas, Google's repo, and myrepos (mr).

Project page: https://github.com/Agilent/yb
Download it here: https://github.com/Agilent/yb/releases/tag/0.0.11

The tool is written in Rust. It is statically linked, so all you need to do=
 is download the binary and put it somewhere in PATH.

The primary contribution I believe this tool makes is the ability to not on=
ly setup Yocto environments, but keep them in sync with the rest of your te=
am as your product(s) evolve. This is realized via the 'stream' mechanism -=
 a git repo that holds your specs (basically like kas' configuration files)=
. Most operations in yb automatically fetch updates to the active stream be=
fore doing anything. If you need to add or remove a layer from your build, =
just do it in the stream. Anyone using that stream will automatically get t=
he update and be informed to update their environment.

I am also very proud of the 'status' command. It works even with vanilla Yo=
cto environments (i.e. what you're using today) as long as the tool can fin=
d "bitbake" on PATH. The "status" command will automatically do a 'git fetc=
h' on each layer. When used along with streams/specs, it will also first ch=
eck for updates to the stream.

I hope you can give it a try and let me know what you find useful/broken. I=
t is still in relatively early development (in particular the 'yb sync' com=
mand) but it is already helpful for my teams' day-to-day work.

Thanks,
Chris

[Attachment #3 (text/html)]

<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-compose;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-family:"Calibri",sans-serif;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Hi all,<o:p></o:p></p>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">Today I&#8217;m excited to publish a tool I&#8217;ve been \
developing internally for about a year now. It is called &#8216;yb&#8217;, and you \
can think of it like a cross between kas, Google&#8217;s repo, and myrepos \
(mr).<o:p></o:p></p> <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">Project page: <a \
href="https://github.com/Agilent/yb">https://github.com/Agilent/yb</a><o:p></o:p></p> \
<p class="MsoNormal">Download it here: <a \
href="https://github.com/Agilent/yb/releases/tag/0.0.11"> \
https://github.com/Agilent/yb/releases/tag/0.0.11</a><o:p></o:p></p> <p \
class="MsoNormal"><o:p>&nbsp;</o:p></p> <p class="MsoNormal">The tool is written in \
Rust. It is statically linked, so all you need to do is download the binary and put \
it somewhere in PATH.<o:p></o:p></p> <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">The primary contribution I believe this tool makes is the \
ability to not only setup Yocto environments, but keep them in sync with the rest of \
your team as your product(s) evolve. This is realized via the &#8216;stream&#8217; \
mechanism - a git repo  that holds your specs (basically like kas&#8217; \
configuration files). Most operations in yb automatically fetch updates to the active \
stream before doing anything. If you need to add or remove a layer from your build, \
just do it in the stream. Anyone using that  stream will automatically get the update \
and be informed to update their environment.<o:p></o:p></p> <p \
class="MsoNormal"><o:p>&nbsp;</o:p></p> <p class="MsoNormal">I am also very proud of \
the &#8216;status&#8217; command. It works even with vanilla Yocto environments (i.e. \
what you&#8217;re using today) as long as the tool can find &#8220;bitbake&#8221; on \
PATH. The &#8220;status&#8221; command will automatically do a &#8216;git \
fetch&#8217; on each  layer. When used along with streams/specs, it will also first \
check for updates to the stream.<o:p></o:p></p> <p \
class="MsoNormal"><o:p>&nbsp;</o:p></p> <p class="MsoNormal">I hope you can give it a \
try and let me know what you find useful/broken. It is still in relatively early \
development (in particular the &#8216;yb sync&#8217; command) but it is already \
helpful for my teams&#8217; day-to-day work.<o:p></o:p></p> <p \
class="MsoNormal"><o:p>&nbsp;</o:p></p> <p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal">Chris<o:p></o:p></p>
</div>
</body>
</html>



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#1625): \
https://lists.openembedded.org/g/openembedded-architecture/message/1625 Mute This \
Topic: https://lists.openembedded.org/mt/92799181/4454510 Group Owner: \
                openembedded-architecture+owner@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-architecture/unsub \
                [openembedded-architecture@marc.info]
-=-=-=-=-=-=-=-=-=-=-=-


--rSR0zdyWShzAqHh3Y4zb--



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic