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

From version 5.1
edited by christoph_lechleitner@iteg_at
on 2019-03-23 09.45:46
Change comment: \n, link to fancylibs adaption
To version 9.1
edited by christoph_lechleitner@iteg_at
on 2023-03-24 08.59:28
Change comment: Adapt to Debian 12 cont.

Summary

Details

Page properties
Content
... ... @@ -2,108 +2,97 @@
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 +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 +
9 9  = {{id name="AdaptingPBAtonewDebianRelease-AdaptingpbatonewDebianRelease"/}}Adapting pba to new Debian Release =
10 10  
11 -=== {{id name="AdaptingPBAtonewDebianRelease-Preprations"/}}Preprations ===
13 +== {{id name="AdaptingPBAtonewDebianRelease-AdaptPBAandcreatePBA-Buildertarballs"/}}Adapt PBA and create PBA-Builder tarballs ==
12 12  
13 -{{code}}
14 -OLDREL=stretch
15 -NEWREL=buster
15 +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}}
17 +=== {{id name="AdaptingPBAtonewDebianRelease----currentpointofadaptiontoDebianBookworm---"/}}**~-~-- current point of adaption to Debian Bookworm ~-~--** ===
20 20  
21 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase1,towardsGA"/}}Adaptions for phase 1, towards GA ===
19 +\\
22 22  
23 -In phase 1 we make the new distribution known in the sense of adding a template for distributions.d/.
21 += {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects =
24 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}
23 +{{code language="none"}}
24 +cd ~/sources/pba/trunk/pba-helloworld
28 28  
29 -# evtl. drop ancient ones
30 -svn rm src/etc/pba/distributions.d/
26 +git checkout main ; git pull ; git checkout main
31 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
28 +git branch ${BRANCHNAME} && git checkout ${BRANCHNAME} && git status
34 34  
35 -# commit
36 -svn commit -m "Adding support for new Debian distro ${NEWREL}"
30 +git push --set-upstream origin ${BRANCHNAME}
37 37  
38 -# release it
39 -pba-release
40 -{{/code}}
32 +pba-raiseversion
33 +# decide next version
34 +pba-raisversion -b 1.2.3 "Adding new Debian target distro ${NEWDN}"
41 41  
42 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects ===
36 +git add debian*/control debian*/changelog
43 43  
44 -{{code language="none"}}
45 -cd ~/sources/pba/trunk/pba-helloworld
46 -svn up ..
47 -
48 -PBAO=""
38 +PBAO="."
49 49  # or
50 -PBAO='-o unix'
40 +PBAO="arch|unix"
41 +# or in phase 2 or when combining
42 +PBAO="arch|unix|7"
51 51  
52 -pba-builddeps -i ${PBAO}
44 +#pba-builddeps -i -o ${PBAO}
53 53  
54 -#pba-instdeps -i ${PBAO}
46 +#pba-instdeps -i -o ${PBAO}
55 55  
56 -pba-build -u -i ${PBAO}
48 +pba-build -u -i -o ${PBAO}
57 57  
58 58  # solve eventual problems
59 59  
60 -${EDITOR:-vi} debian/changelog debian/control
61 -# or
62 -${EDITOR:-vi} debian-unix/changelog debian-unix/control
52 +PBADD=$(ls -1d debian* |grep -v mingw |head -1)
53 +${EDITOR:-vi} ${PBADD}/changelog ${PBADD}/control
63 63  
64 -pba-syncchangelogs
55 +pba-localbuild -u -o ${PBAO}
65 65  
66 -pba-release -u -b pba-spool/ ${PBAO}
67 -sudo pba-builder -B pba-spool -b pba-results ${PBAO} 2>&1 |tee pba-builder.log
57 +# evtl.
58 +#pba-localrpmbuild -u -o ${PBAO}
68 68  
69 69  # wait for success
70 70  
71 -sudo rm -rf pba-spool/ pba-results pba-builder.log
62 +git commit -m "Adding support for new Debian distro ${NEWDN}"
63 +git push
72 72  
73 -svn commit -m "Adding support for new Debian distro ${NEWREL}"
65 +# optional, eventually after merge in main
66 +pba-release -o ${PBAO}
74 74  
75 -pba-release ${PBAO}
76 76  
77 -
78 78  {{/code}}
79 79  
80 -Repeat for pba-hellolib-portable (with -o unix).
71 +LATER (after adapting Fancylibs below) repeat for {{code language="none"}}pba-helloworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
81 81  
82 -Repeat for pba-hellobigworld-portable (with -o unix).
73 +Repeat for {{code language="none"}}pba-hellolib-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
83 83  
84 -... 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}}(%%).
75 +Repeat for {{code language="none"}}pba-hellobigworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
85 85  
86 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] ===
77 +... with (% style="letter-spacing: 0.0px;" %){{code language="none"}}-o unix{{/code}}(%%) or later (% style="letter-spacing: 0.0px;" %){{code language="none"}}-o "unix|9"{{/code}}(%%).
87 87  
88 -See [[confluencePage:page:FANCYLIBS.Adapting FancyLibs to new Debian Release]],
79 += {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] =
89 89  
90 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable ===
81 +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]].
91 91  
92 -See above, use -o unix.
83 += {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable =
93 93  
94 -=== {{id name="AdaptingPBAtonewDebianRelease-CreatePBA-Buildertarballs"/}}Create PBA-Builder tarballs ===
85 +See above, use {{code language="none"}}-o unix{{/code}}.
95 95  
96 -See eventual separate notes (my [[ITEG's PBA-Tarball Notes>>url:https://confluence.iteg.at/x/l4Kg||shape="rect"]] are not public, sorry).
87 += {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGWifnotdownduringFancyLibsadaptionabove"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] if not down during FancyLibs adaption above =
97 97  
98 -=== {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGW"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] ===
99 -
100 100  See [[doc:MINGW64.mingw 6 rebuild order.WebHome]].
101 101  
102 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-hello*-portable"/}}Adapt pba-hello*-portable ===
91 +=== {{id name="AdaptingPBAtonewDebianRelease-MinGW-Adaptpba-hello*-portable"/}}MinGW-Adapt pba-hello*-portable ===
103 103  
104 -See above, with -o "unix|7" instead of "-o unix".
93 +See above, with -o "unix|9" instead of "-o unix".
105 105  
106 -=== {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled ===
95 += {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled =
107 107  
108 108  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}}.
109 109  
... ... @@ -111,7 +111,7 @@
111 111  ${EDITOR:-vi} debian/changelog src/etc/pba/builder.conf.template src/lib/build-functions.pl
112 112  
113 113  # commit
114 -svn commit -m "Making new Debian distro ${NEWREL} default for DefaultDistribution in pba-builder.conf"
103 +git commit -m "Making new Debian distro ${NEWDN} default for DefaultDistribution in pba-builder.conf"
115 115  
116 116  # release it
117 117  pba-release
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -659138
1 +968720458
URL
... ... @@ -1,1 +1,1 @@
1 -https://clazzes.atlassian.net/wiki/spaces/PBA/pages/659138/Adapting PBA to new Debian Release
1 +https://clazzes.atlassian.net/wiki/spaces/PBA/pages/968720458/Adapting PBA to new Debian Release