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

From version 2.1
edited by christoph_lechleitner@iteg_at
on 2019-03-22 11.20:00
Change comment: Phase 1 completed
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,76 +2,104 @@
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 -(% style="color: rgb(255,0,0);" %)WARNING: Incomplete Work in Progress
11 += {{id name="AdaptingPBAtonewDebianRelease-AdaptPBAandcreatePBA-Buildertarballs"/}}Adapt PBA and create PBA-Builder tarballs =
12 12  
13 -=== {{id name="AdaptingPBAtonewDebianRelease-Preprations"/}}Preprations ===
13 +See [[https:~~/~~/iteg.atlassian.net/l/cp/SGt5wKvo>>url:https://iteg.atlassian.net/l/cp/SGt5wKvo||shape="rect"]] (access ITEG only for now).
14 14  
15 -{{code}}
16 -OLDREL=stretch
17 -NEWREL=buster
15 += {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects =
18 18  
17 +{{code language="none"}}
18 +cd ~/sources/pba/trunk/pba-helloworld
19 19  
20 -cd ~/sources/pba/trunk/pba
21 -svn up ..
22 -{{/code}}
20 +git checkout main ; git pull ; git checkout main
23 23  
24 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase1,towardsGA"/}}Adaptions for phase 1, towards GA ===
22 +# optional, branch:
23 +#git branch ${BRANCHNAME} && git checkout ${BRANCHNAME} && git status
25 25  
26 -In phase 1 we make the new distribution known in the sense of adding a template for distributions.d/.
25 +git push --set-upstream origin ${BRANCHNAME}
27 27  
28 -{{code}}
29 -cat src/etc/pba/distributions.d/${OLDREL} |sed -e "s/${OLDREL}/${NEWREL}/g" >src/etc/pba/distributions.d/${NEWREL}
30 -svn add src/etc/pba/distributions.d/${NEWREL}
27 +pba-raiseversion
28 +# decide next version
29 +pba-raisversion -b 1.2.3 "Adding new Debian target distro ${NEWDN}"
31 31  
31 +PBAO="."
32 +# or
33 +PBAO="arch|unix"
34 +# or in phase 2 or when combining
35 +PBAO="arch|unix|7"
32 32  
33 -# evtl. drop ancient ones
34 -svn rm src/etc/pba/distributions.d/
37 +#pba-builddeps -i -o ${PBAO}
35 35  
39 +#pba-instdeps -i -o ${PBAO}
36 36  
37 -${EDITOR:-vi} debian/changelog debian/rules debian/pba-common.install src/etc/pba/distributions.d/${NEWREL} debian/control
38 -# src/etc/pba/builder.conf.template src/lib/build-functions.pl
41 +# optional local build
42 +pba-build -u -i -o ${PBAO}
43 +# below: pba-localbuild -u -o ${PBAO}
44 +# solve eventual problems
39 39  
46 +#PBADD=$(ls -1d debian* |grep -v mingw |head -1)
47 +#${EDITOR:-vi} ${PBADD}/changelog ${PBADD}/control
48 +${EDITOR:-vi} debian-{arch,unix}/control
40 40  
41 -# commit
42 -svn commit -m "Adding support for new Debian distro ${NEWREL}"
50 +pba-localbuild -u -o ${PBAO}
43 43  
52 +# evtl.
53 +#pba-localrpmbuild -u -o ${PBAO}
44 44  
45 -# release it
46 -pba-release
55 +# wait for success
56 +
57 +git add debian*/control debian*/changelog spec*/*spec
58 +
59 +git commit -m "Adding support for new Debian distro ${NEWDN}"
60 +git push
61 +
62 +# optional, eventually after merge in main
63 +pba-release -o ${PBAO}
64 +
65 +
47 47  {{/code}}
48 48  
49 -=== {{id name="AdaptingPBAtonewDebianRelease-CreatePBA-Buildertarballs"/}}Create PBA-Builder tarballs ===
68 +LATER (after adapting Fancylibs below) repeat for {{code language="none"}}pba-helloworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
50 50  
51 -See eventual separate notes (my [[ITEG's PBA-Tarball Notes>>url:https://confluence.iteg.at/x/l4Kg||shape="rect"]] are not public, sorry).
70 +Repeat for {{code language="none"}}pba-hellolib-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
52 52  
53 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects ===
72 +Repeat for {{code language="none"}}pba-hellobigworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
54 54  
55 -TBD.
74 +... with {{code language="none"}}-o unix{{/code}} or later {{code language="none"}}-o "unix|9"{{/code}}.
56 56  
57 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] ===
76 += {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] =
58 58  
59 -TBD.
78 +=== {{id name="AdaptingPBAtonewDebianRelease----currentpointofadaptiontoDebianBookworm---"/}}**~-~-- current point of adaption to Debian Bookworm ~-~--** ===
60 60  
61 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGW"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] ===
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]].
62 62  
82 += {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable =
83 +
84 +See above, use {{code language="none"}}-o unix{{/code}}.
85 +
86 += {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGWifnotdownduringFancyLibsadaptionabove"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] if not down during FancyLibs adaption above =
87 +
63 63  See [[doc:MINGW64.mingw 6 rebuild order.WebHome]].
64 64  
65 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled ===
90 +=== {{id name="AdaptingPBAtonewDebianRelease-MinGW-Adaptpba-hello*-portable"/}}MinGW-Adapt pba-hello*-portable ===
66 66  
92 +See above, with -o "unix|9" instead of "-o unix".
93 +
94 += {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled =
95 +
67 67  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}}.
68 68  
69 69  {{code}}
70 70  ${EDITOR:-vi} debian/changelog src/etc/pba/builder.conf.template src/lib/build-functions.pl
71 71  
72 -
73 73  # commit
74 -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"
75 75  
76 76  # release it
77 77  pba-release
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -659144
1 +659062
URL
... ... @@ -1,1 +1,1 @@
1 -https://clazzes.atlassian.net/wiki/spaces/PBA/pages/659144/Adapting PBA to new Debian Release
1 +https://clazzes.atlassian.net/wiki/spaces/PBA/pages/659062/Adapting PBA to new Debian Release