Last modified by christoph_lechleitner@iteg_at on 2025-08-11 12.45:34

From version 4.1
edited by christoph_lechleitner@iteg_at
on 2019-03-23 09.28:14
Change comment: Filled adaption of hello world projects
To version 12.1
edited by christoph_lechleitner@iteg_at
on 2025-08-11 12.45:34
Change comment: Fine tuning recovered "Adapt HelloWorld Projects"

Summary

Details

Page properties
Content
... ... @@ -2,119 +2,96 @@
2 2  
3 3  About every 2 years Debian introduces a new release.
4 4  
5 -At the time I'm writing this Debian [[Buster>>url:https://wiki.debian.org/DebianBuster||shape="rect"]] is on it's way from Full Freeze to GA.
5 +The following notes shall provide a step-by-step-plan for adapting the [[PBA Package Builder + Archiver>>doc:PBA.WebHome]] to a new Debian release and shall make it more efficient for the next Debian.
6 6  
7 -The following notes shall provide a step-by-step-plan for adapting the [[PBA Package Builder + Archiver>>doc:PBA.WebHome]] to a new Debian release and shall make it more efficient for the next Debian or maybe Ubuntu release.
7 +The first version of this page was created when Debian [[Buster>>url:https://wiki.debian.org/DebianBuster||shape="rect"]] was on it's way from Full Freeze to GA, we were still using {{code language="none"}}svn{{/code}} back then (mostly {{code language="none"}}git{{/code}} now).
8 8  
9 -= {{id name="AdaptingPBAtonewDebianRelease-AdaptingpbatonewDebianRelease"/}}Adapting pba to new Debian Release =
9 +Currently we are in the progress of adapting from [[Bullseye>>url:https://wiki.debian.org/DebianBullseye||shape="rect"]] to [[Bookworm>>url:https://wiki.debian.org/DebianBookworm||shape="rect"]], so this is __WORK IN PROGRESS__ rg. Bookworm.
10 10  
11 -=== {{id name="AdaptingPBAtonewDebianRelease-Preprations"/}}Preprations ===
11 += {{id name="AdaptingPBAtonewDebianRelease-AdaptPBAandcreatePBA-Buildertarballs"/}}Adapt PBA and create PBA-Builder tarballs =
12 12  
13 -{{code}}
14 -OLDREL=stretch
15 -NEWREL=buster
13 +See [[https:~~/~~/iteg.atlassian.net/l/cp/SGt5wKvo>>url:https://iteg.atlassian.net/l/cp/SGt5wKvo||shape="rect"]] (access ITEG only for now).
16 16  
17 -cd ~/sources/pba/trunk/pba
18 -svn up ..
19 -{{/code}}
15 += {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects =
20 20  
21 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase1,towardsGA"/}}Adaptions for phase 1, towards GA ===
22 -
23 -In phase 1 we make the new distribution known in the sense of adding a template for distributions.d/.
24 -
25 -{{code}}
26 -cat src/etc/pba/distributions.d/${OLDREL} |sed -e "s/${OLDREL}/${NEWREL}/g" >src/etc/pba/distributions.d/${NEWREL}
27 -svn add src/etc/pba/distributions.d/${NEWREL}
28 -
29 -# evtl. drop ancient ones
30 -svn rm src/etc/pba/distributions.d/
31 -
32 -${EDITOR:-vi} debian/changelog debian/rules debian/pba-common.install src/etc/pba/distributions.d/${NEWREL} debian/control
33 -# src/etc/pba/builder.conf.template src/lib/build-functions.pl
34 -
35 -# commit
36 -svn commit -m "Adding support for new Debian distro ${NEWREL}"
37 -
38 -# release it
39 -pba-release
40 -{{/code}}
41 -
42 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects ===
43 -
44 44  {{code language="none"}}
45 45  cd ~/sources/pba/trunk/pba-helloworld
46 -svn up ..
47 47  
20 +git checkout main ; git pull ; git checkout main
48 48  
49 -PBAO=""
50 -# or
51 -PBAO='-o unix'
22 +# optional, branch:
23 +#git branch ${BRANCHNAME} && git checkout ${BRANCHNAME} && git status
52 52  
25 +git push --set-upstream origin ${BRANCHNAME}
53 53  
54 -pba-builddeps -i ${PBAO}
27 +pba-raiseversion
28 +# decide next version
29 +pba-raisversion -b 1.2.3 "Adding new Debian target distro ${NEWDN}"
55 55  
31 +PBAO="."
32 +# or
33 +PBAO="arch|unix"
34 +# or in phase 2 or when combining
35 +PBAO="arch|unix|7"
56 56  
57 -#pba-instdeps -i ${PBAO}
37 +#pba-builddeps -i -o ${PBAO}
58 58  
39 +#pba-instdeps -i -o ${PBAO}
59 59  
60 -pba-build -u -i ${PBAO}
61 -
62 -
41 +# optional local build
42 +pba-build -u -i -o ${PBAO}
43 +# below: pba-localbuild -u -o ${PBAO}
63 63  # solve eventual problems
64 64  
46 +#PBADD=$(ls -1d debian* |grep -v mingw |head -1)
47 +#${EDITOR:-vi} ${PBADD}/changelog ${PBADD}/control
48 +${EDITOR:-vi} debian-{arch,unix}/control
65 65  
66 -${EDITOR:-vi} debian/changelog debian/control
67 -# or
68 -${EDITOR:-vi} debian-unix/changelog debian-unix/control
50 +pba-localbuild -u -o ${PBAO}
69 69  
52 +# evtl.
53 +#pba-localrpmbuild -u -o ${PBAO}
70 70  
71 -pba-syncchangelogs
72 -
73 -
74 -pba-release -u -b pba-spool/ ${PBAO}
75 -sudo pba-builder -B pba-spool -b pba-results ${PBAO} 2>&1 |tee pba-builder.log
76 -
77 -
78 78  # wait for success
79 79  
57 +git add debian*/control debian*/changelog spec*/*spec
80 80  
81 -sudo rm -rf pba-spool/ pba-results pba-builder.log
59 +git commit -m "Adding support for new Debian distro ${NEWDN}"
60 +git push
82 82  
62 +# optional, eventually after merge in main
63 +pba-release -o ${PBAO}
83 83  
84 -svn commit -m "Adding support for new Debian distro ${NEWREL}"
85 85  
86 -pba-release ${PBAO}
87 -
88 -
89 89  {{/code}}
90 90  
91 -Repeat for pba-hellolib-portable (with -o unix).
68 +LATER (after adapting Fancylibs below) repeat for {{code language="none"}}pba-helloworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
92 92  
93 -Repeat for pba-hellobigworld-portable (with -o unix).
70 +Repeat for {{code language="none"}}pba-hellolib-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
94 94  
95 -... with (% style="letter-spacing: 0.0px;" %){{code language="none"}}-o unix{{/code}}(%%) or later (% style="letter-spacing: 0.0px;" %){{code language="none"}}-o "unix|7"{{/code}}(%%).
72 +Repeat for {{code language="none"}}pba-hellobigworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
96 96  
97 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] ===
74 +... with {{code language="none"}}-o unix{{/code}} or later {{code language="none"}}-o "unix|9"{{/code}}.
98 98  
99 -TBD.
76 += {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] =
100 100  
101 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable ===
78 +=== {{id name="AdaptingPBAtonewDebianRelease----currentpointofadaptiontoDebianBookworm---"/}}**~-~-- current point of adaption to Debian Bookworm ~-~--** ===
102 102  
103 -See above, use -o unix.
80 +See [[Adapting FancyLibs & MinGW-Pkg from Debian 9 Stretch to 10 Buster, Mingw-7 to Mingw-8>>doc:FANCYLIBS.Adapting FancyLibs & MinGW-Pkg from Debian 9 Stretch to 10 Buster, Mingw-7 to Mingw-8.WebHome]].
104 104  
105 -=== {{id name="AdaptingPBAtonewDebianRelease-CreatePBA-Buildertarballs"/}}Create PBA-Builder tarballs ===
82 += {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable =
106 106  
107 -See eventual separate notes (my [[ITEG's PBA-Tarball Notes>>url:https://confluence.iteg.at/x/l4Kg||shape="rect"]] are not public, sorry).
84 +See above, use {{code language="none"}}-o unix{{/code}}.
108 108  
109 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGW"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] ===
86 += {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGWifnotdownduringFancyLibsadaptionabove"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] if not down during FancyLibs adaption above =
110 110  
111 111  See [[doc:MINGW64.mingw 6 rebuild order.WebHome]].
112 112  
113 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-hello*-portable"/}}Adapt pba-hello*-portable ===
90 +=== {{id name="AdaptingPBAtonewDebianRelease-MinGW-Adaptpba-hello*-portable"/}}MinGW-Adapt pba-hello*-portable ===
114 114  
115 -See above, with -o "unix|7" instead of "-o unix".
92 +See above, with -o "unix|9" instead of "-o unix".
116 116  
117 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled ===
94 += {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled =
118 118  
119 119  Once the new Debian release is settled and all VIP libraries and current projects can be built for it, we can declare it the new default value for {{code language="none"}}DefaultDistribution{{/code}} in {{code language="none"}}pba-builder.conf{{/code}}.
120 120  
... ... @@ -122,7 +122,7 @@
122 122  ${EDITOR:-vi} debian/changelog src/etc/pba/builder.conf.template src/lib/build-functions.pl
123 123  
124 124  # commit
125 -svn commit -m "Making new Debian distro ${NEWREL} default for DefaultDistribution in pba-builder.conf"
102 +git commit -m "Making new Debian distro ${NEWDN} default for DefaultDistribution in pba-builder.conf"
126 126  
127 127  # release it
128 128  pba-release
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -659141
1 +659062
URL
... ... @@ -1,1 +1,1 @@
1 -https://clazzes.atlassian.net/wiki/spaces/PBA/pages/659141/Adapting PBA to new Debian Release
1 +https://clazzes.atlassian.net/wiki/spaces/PBA/pages/659062/Adapting PBA to new Debian Release