[Starlingx-discuss] [Debian Build]: Layout of the debian folder

Short, Charles Charles.Short at windriver.com
Wed Jul 28 15:49:02 UTC 2021


Comments inline

From: Scott Little <scott.little at windriver.com>
Sent: Wednesday, July 28, 2021 11:42 AM
To: starlingx-discuss at lists.starlingx.io
Subject: Re: [Starlingx-discuss] [Debian Build]: Layout of the debian folder


debname:

   The text is unclear.

   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"

deb_folder:

   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.

src_path:

   Should support some common macros rather than relying strictly on relative paths.  This aids in code restructuring, both within and across gits.
   e.g. we have macros like... PKG_BASE, GIT_BASE, STX_BASE

general:

   At some point it would be desirable to have a tool to aid in patch creation.  It should use git.

   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.

   e.g. stx edit --pkg-type=debian --package=dhcp
   = it copies 'debian' to a working directory and does   git init, git add --all, git commit
   = It copies tarball source into a second working directory and does   git init, git add --all, git commit
   = It applies 'patches' and 'deb_patches' to the correct gits, in the correct order, and creates a git commit for each.

   The user can then edit files, cherry-pick a fix from elsewhere, re-order or delete a patch... etc.

   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 ...
         stx edit --publish --pkg-type=debian --package=dhcp

   One major use of tis is to 'de-fuzz' patches when moving to a new upstream version/tarball


We could leverage git-buildpackage to do this for us: https://wiki.debian.org/PackagingWithGit

chuck



On 2021-07-26 3:33 a.m., ytao wrote:
Hello Everyone:

You may have known Wind River team is working on the transition to Debian OS, more details of the project can be found at https://docs.starlingx.io/specs/specs/stx-6.0/<https://urldefense.com/v3/__https:/docs.starlingx.io/specs/specs/stx-6.0/__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-qOvYRDU$>. My purpose is launching a discussion about the userspace packages transition to Debian. The spec can be found at https://docs.starlingx.io/specs/specs/stx-6.0/approved/starlingx_2008704_debian_transition.html<https://urldefense.com/v3/__https:/docs.starlingx.io/specs/specs/stx-6.0/approved/starlingx_2008704_debian_transition.html__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-v7vIRqm$>

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:

https://opendev.org/starlingx/integ/src/branch/master/base/dhcp/centos<https://urldefense.com/v3/__https:/opendev.org/starlingx/integ/src/branch/master/base/dhcp/centos__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-lbvuutm$>

We will create a debian folder in same location

https://opendev.org/starlingx/integ/src/branch/master/base/dhcp/debian<https://urldefense.com/v3/__https:/opendev.org/starlingx/integ/src/branch/master/base/dhcp/debian__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-haePFKA$>.

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.

This layout is not the final version, I'm appreciated for any suggestion from you.


Thanks,

ytao




_______________________________________________

Starlingx-discuss mailing list

Starlingx-discuss at lists.starlingx.io<mailto:Starlingx-discuss at lists.starlingx.io>

http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss<https://urldefense.com/v3/__http:/lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss__;!!AjveYdw8EvQ!KKiGaR4c4k8o5E8Q-ZSn5OkHt-mu7NxuhOFFuLzDepL6GNUCtUYeB1Xz05Bs-jdZ04zJ$>


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.starlingx.io/pipermail/starlingx-discuss/attachments/20210728/a15d7431/attachment-0001.html>


More information about the Starlingx-discuss mailing list