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 8.1
edited by christoph_lechleitner@iteg_at
on 2023-03-24 08.55:42
Change comment: Started on Debian 12 Bookworm

Summary

Details

Page properties
Content
... ... @@ -2,20 +2,22 @@
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 11  === {{id name="AdaptingPBAtonewDebianRelease-Preprations"/}}Preprations ===
12 12  
13 13  {{code}}
14 -OLDREL=stretch
15 -NEWREL=buster
16 +OLDDN=bullseye
17 +NEWDN=bookworm
16 16  
17 -cd ~/sources/pba/trunk/pba
18 -svn up ..
19 +# we prefix name of feature branches issue number or epic numbers
20 +ISSUENR="8" ; BRANCHNAME="${ISSUENR}_adapt_to_debian_${NEWDN}" ; echo "Branch name: ${BRANCHNAME}"
19 19  {{/code}}
20 20  
21 21  === {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase1,towardsGA"/}}Adaptions for phase 1, towards GA ===
... ... @@ -23,96 +23,120 @@
23 23  In phase 1 we make the new distribution known in the sense of adding a template for distributions.d/.
24 24  
25 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 +cd ~/sources/pba/pba/pba
28 28  
30 +git checkout main ; git pull ; git checkout main
31 +
32 +git branch ${BRANCHNAME} && git checkout ${BRANCHNAME} && git status
33 +
34 +git push --set-upstream origin ${BRANCHNAME}
35 +
36 +cat src/etc/pba/distributions.d/${OLDDN} |sed -e "s/${OLDDN}/${NEWDN}/g" >src/etc/pba/distributions.d/${NEWDN}
37 +${EDITOR:-vi} src/etc/pba/distributions.d/${NEWDN}
38 +
39 +git add src/etc/pba/distributions.d/${NEWDN}
40 +
29 29  # evtl. drop ancient ones
30 -svn rm src/etc/pba/distributions.d/
42 +git rm src/etc/pba/distributions.d/foobar
31 31  
32 -${EDITOR:-vi} debian/changelog debian/rules debian/pba-common.install src/etc/pba/distributions.d/${NEWREL} debian/control
44 +pba-raiseversion
45 +
46 +pba-raiseversion -b 1.6.31-0 "Adapting to distribution Debian 12 Bookworm"
47 +
48 +${EDITOR:-vi} debian-unix/rules debian*/pba-common.install src/etc/pba/distributions.d/${NEWDN}
49 +# debian-unix/control
33 33  # src/etc/pba/builder.conf.template src/lib/build-functions.pl
34 34  
35 35  # commit
36 -svn commit -m "Adding support for new Debian distro ${NEWREL}"
53 +git commit -m "Adding support for new Debian distro ${NEWDN}"
37 37  
38 -# release it
55 +git push
56 +
57 +# evtl. release it locally, or in Gitlab
39 39  pba-release
59 +
60 +
40 40  {{/code}}
41 41  
63 +=== {{id name="AdaptingPBAtonewDebianRelease----currentpointofadaptiontoDebianBookworm---"/}}**~-~-- current point of adaption to Debian Bookworm ~-~--** ===
64 +
65 +=== {{id name="AdaptingPBAtonewDebianRelease-CreatePBA-Buildertarballs"/}}Create PBA-Builder tarballs ===
66 +
67 +See eventual separate notes (my [[ITEG's PBA-Tarball Notes>>url:https://confluence.iteg.at/x/l4Kg||shape="rect"]] are not public, sorry).
68 +
42 42  === {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects ===
43 43  
44 44  {{code language="none"}}
45 45  cd ~/sources/pba/trunk/pba-helloworld
46 -svn up ..
47 47  
74 +git checkout main ; git pull ; git checkout main
48 48  
49 -PBAO=""
50 -# or
51 -PBAO='-o unix'
76 +git branch ${BRANCHNAME} && git checkout ${BRANCHNAME} && git status
52 52  
78 +git push --set-upstream origin ${BRANCHNAME}
53 53  
54 -pba-builddeps -i ${PBAO}
80 +pba-raiseversion
81 +# decide next version
82 +pba-raisversion -b 1.2.3 "Adding new Debian target distro ${NEWDN}"
55 55  
84 +git add debian*/control debian*/changelog
56 56  
57 -#pba-instdeps -i ${PBAO}
86 +PBAO="."
87 +# or
88 +PBAO="arch|unix"
89 +# or in phase 2 or when combining
90 +PBAO="arch|unix|7"
58 58  
92 +#pba-builddeps -i -o ${PBAO}
59 59  
60 -pba-build -u -i ${PBAO}
94 +#pba-instdeps -i -o ${PBAO}
61 61  
96 +pba-build -u -i -o ${PBAO}
62 62  
63 63  # solve eventual problems
64 64  
100 +PBADD=$(ls -1d debian* |grep -v mingw |head -1)
101 +${EDITOR:-vi} ${PBADD}/changelog ${PBADD}/control
65 65  
66 -${EDITOR:-vi} debian/changelog debian/control
67 -# or
68 -${EDITOR:-vi} debian-unix/changelog debian-unix/control
103 +pba-localbuild -u -o ${PBAO}
69 69  
105 +# evtl.
106 +#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  
110 +git commit -m "Adding support for new Debian distro ${NEWDN}"
111 +git push
80 80  
81 -sudo rm -rf pba-spool/ pba-results pba-builder.log
113 +# optional, eventually after merge in main
114 +pba-release -o ${PBAO}
82 82  
83 83  
84 -svn commit -m "Adding support for new Debian distro ${NEWREL}"
85 -
86 -pba-release ${PBAO}
87 -
88 -
89 89  {{/code}}
90 90  
91 -Repeat for pba-hellolib-portable (with -o unix).
119 +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).
121 +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}}(%%).
123 +Repeat for {{code language="none"}}pba-hellobigworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
96 96  
125 +... 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}}(%%).
126 +
97 97  === {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] ===
98 98  
99 -TBD.
129 +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]].
100 100  
101 101  === {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable ===
102 102  
103 -See above, use -o unix.
133 +See above, use {{code language="none"}}-o unix{{/code}}.
104 104  
105 -=== {{id name="AdaptingPBAtonewDebianRelease-CreatePBA-Buildertarballs"/}}Create PBA-Builder tarballs ===
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).
108 -
109 109  === {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGW"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] ===
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 ===
139 +=== {{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".
141 +See above, with -o "unix|9" instead of "-o unix".
116 116  
117 117  === {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled ===
118 118  
... ... @@ -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"
151 +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 +968687752
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/968687752/Adapting PBA to new Debian Release