<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=utf-8">
<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;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 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;
        color:black;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@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 bgcolor="white" lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:windowtext">Comments inline<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="color:windowtext">From:</span></b><span style="color:windowtext"> Scott Little <scott.little@windriver.com>
<br>
<b>Sent:</b> Wednesday, July 28, 2021 11:42 AM<br>
<b>To:</b> starlingx-discuss@lists.starlingx.io<br>
<b>Subject:</b> Re: [Starlingx-discuss] [Debian Build]: Layout of the debian folder<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">debname:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   The text is unclear.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   I think you are saying that the deb built out of directory "integ/base/dhcp" would get the name "dhcp" by defult.  However the Debian convention is to call this package "isc-dhcp" so we must include a "integ/base/dhcp/debian/debname"
 file to force the package we build to receive the name "isc-dhcp"<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">deb_folder:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   This overrides the upstream folder entirely?  It can't be used to add files or override specific upstream files?  If it does override the entire folder, perhaps we need a warning from the package builder that the override has occurred.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">src_path:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   Should support some common macros rather than relying strictly on relative paths.  This aids in code restructuring, both within and across gits.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">   e.g. we have macros like... PKG_BASE, GIT_BASE, STX_BASE<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">general:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   At some point it would be desirable to have a tool to aid in patch creation.  It should use git.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   Currently build-pkg --edit tries to do this, but it's not very reliable as rpm's approach to patching fairly free-form and hard to automate.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   e.g. stx edit --pkg-type=debian --package=dhcp<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">   = it copies 'debian' to a working directory and does   git init, git add --all, git commit<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">   = It copies tarball source into a second working directory and does   git init, git add --all, git commit<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">   = It applies 'patches' and 'deb_patches' to the correct gits, in the correct order, and creates a git commit for each.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   The user can then edit files, cherry-pick a fix from elsewhere, re-order or delete a patch... etc.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   Finally the user uses git format-patch to regenerate the patch and deb-patch series ... or perhaps this step is covered by the 'stx' tool ...<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">         stx edit --publish --pkg-type=debian --package=dhcp<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   One major use of tis is to 'de-fuzz' patches when moving to a new upstream version/tarball<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">   <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:windowtext">We could leverage git-buildpackage to do this for us:
<a href="https://wiki.debian.org/PackagingWithGit">https://wiki.debian.org/PackagingWithGit</a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:windowtext">chuck<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">On 2021-07-26 3:33 a.m., ytao wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">Hello Everyone: <br>
<br>
You may have known Wind River team is working on the transition to Debian OS, more details of the project can be found at
<a href="https://urldefense.com/v3/__https:/docs.starlingx.io/specs/specs/stx-6.0/__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-qOvYRDU$">
https://docs.starlingx.io/specs/specs/stx-6.0/</a>. My purpose is launching a discussion about the userspace packages transition to Debian. The spec can be found at
<a href="https://urldefense.com/v3/__https:/docs.starlingx.io/specs/specs/stx-6.0/approved/starlingx_2008704_debian_transition.html__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-v7vIRqm$">
https://docs.starlingx.io/specs/specs/stx-6.0/approved/starlingx_2008704_debian_transition.html</a><br>
<br>
In order to inherit the existing userspace construction as much as possible, our proposal is creating a 'debian' folder in same directory with 'centos' folder for each package. For example, the dhcp package in integ repo, it's centos folder is at:
<br>
<br>
<a href="https://urldefense.com/v3/__https:/opendev.org/starlingx/integ/src/branch/master/base/dhcp/centos__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-lbvuutm$">https://opendev.org/starlingx/integ/src/branch/master/base/dhcp/centos</a>
<br>
<br>
We will create a debian folder in same location <br>
<br>
<a href="https://urldefense.com/v3/__https:/opendev.org/starlingx/integ/src/branch/master/base/dhcp/debian__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-haePFKA$">https://opendev.org/starlingx/integ/src/branch/master/base/dhcp/debian</a>.
<br>
<br>
All materials in this folder control building dhcp under Debian host. The "stx_deb_folder_layout.rst" is the layout of debian folder. I also attach a couple of samples to demonstrate how to fill the debian folder for a debian package and a 3rd package.
<br>
<br>
This layout is not the final version, I'm appreciated for any suggestion from you.
<br>
<br>
<br>
Thanks, <br>
<br>
ytao <br>
<br>
<br>
<br>
<o:p></o:p></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>Starlingx-discuss mailing list<o:p></o:p></pre>
<pre><a href="mailto:Starlingx-discuss@lists.starlingx.io">Starlingx-discuss@lists.starlingx.io</a><o:p></o:p></pre>
<pre><a href="https://urldefense.com/v3/__http:/lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-jdZ04zJ$">http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss</a><o:p></o:p></pre>
</blockquote>
<p><o:p> </o:p></p>
</div>
</body>
</html>