Version 11.1 by christoph_lechleitner@iteg_at on 2025-08-11 12.33:01

Hide last authors
christoph_lechleitner@iteg_at 1.1 1 = {{id name="AdaptingPBAtonewDebianRelease-Introduction"/}}Introduction =
2
3 About every 2 years Debian introduces a new release.
4
christoph_lechleitner@iteg_at 7.1 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.
christoph_lechleitner@iteg_at 1.1 6
christoph_lechleitner@iteg_at 8.1 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).
christoph_lechleitner@iteg_at 1.1 8
christoph_lechleitner@iteg_at 8.1 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.
christoph_lechleitner@iteg_at 7.1 10
christoph_lechleitner@iteg_at 10.1 11 = {{id name="AdaptingPBAtonewDebianRelease-AdaptPBAandcreatePBA-Buildertarballs"/}}Adapt PBA and create PBA-Builder tarballs =
christoph_lechleitner@iteg_at 1.1 12
christoph_lechleitner@iteg_at 9.1 13 See [[https:~~/~~/iteg.atlassian.net/l/cp/SGt5wKvo>>url:https://iteg.atlassian.net/l/cp/SGt5wKvo||shape="rect"]] (access ITEG only for now).
christoph_lechleitner@iteg_at 1.1 14
christoph_lechleitner@iteg_at 11.1 15 (% style="" %)
16 = {{id name="AdaptingPBAtonewDebianRelease-AdaptHelloWorldProjects"/}}Adapt HelloWorld Projects =
17
18 {{code language="none"}}
19 cd ~/sources/pba/trunk/pba-helloworld
20
21 git checkout main ; git pull ; git checkout main
22
23 git branch ${BRANCHNAME} && git checkout ${BRANCHNAME} && git status
24
25 git push --set-upstream origin ${BRANCHNAME}
26
27 pba-raiseversion
28 # decide next version
29 pba-raisversion -b 1.2.3 "Adding new Debian target distro ${NEWDN}"
30
31 git add debian*/control debian*/changelog
32
33 PBAO="."
34 # or
35 PBAO="arch|unix"
36 # or in phase 2 or when combining
37 PBAO="arch|unix|7"
38
39 #pba-builddeps -i -o ${PBAO}
40
41 #pba-instdeps -i -o ${PBAO}
42
43 pba-build -u -i -o ${PBAO}
44
45 # solve eventual problems
46
47 PBADD=$(ls -1d debian* |grep -v mingw |head -1)
48 ${EDITOR:-vi} ${PBADD}/changelog ${PBADD}/control
49
50 pba-localbuild -u -o ${PBAO}
51
52 # evtl.
53 #pba-localrpmbuild -u -o ${PBAO}
54
55 # wait for success
56
57 git commit -m "Adding support for new Debian distro ${NEWDN}"
58 git push
59
60 # optional, eventually after merge in main
61 pba-release -o ${PBAO}
62
63
64 {{/code}}
65
66 (% style="" %)
67 LATER (after adapting Fancylibs below) repeat for {{code language="none"}}pba-helloworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
68
69 (% style="" %)
70 Repeat for {{code language="none"}}pba-hellolib-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
71
72 (% style="" %)
73 Repeat for {{code language="none"}}pba-hellobigworld-portable{{/code}} (with {{code language="none"}}-o unix{{/code}}).
74
75 (% style="" %)
76 ... with {{code language="none"}}-o unix{{/code}} or later {{code language="none"}}-o "unix|9"{{/code}}.
77
christoph_lechleitner@iteg_at 10.1 78 = {{id name="AdaptingPBAtonewDebianRelease-AdaptFANCYLIBS"/}}Adapt [[doc:FANCYLIBS.WebHome]] =
79
christoph_lechleitner@iteg_at 8.1 80 === {{id name="AdaptingPBAtonewDebianRelease----currentpointofadaptiontoDebianBookworm---"/}}**~-~-- current point of adaption to Debian Bookworm ~-~--** ===
81
christoph_lechleitner@iteg_at 7.1 82 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]].
83
christoph_lechleitner@iteg_at 9.1 84 = {{id name="AdaptingPBAtonewDebianRelease-Adaptpba-helloworld-portable"/}}Adapt pba-helloworld-portable =
christoph_lechleitner@iteg_at 4.1 85
christoph_lechleitner@iteg_at 7.1 86 See above, use {{code language="none"}}-o unix{{/code}}.
christoph_lechleitner@iteg_at 4.1 87
christoph_lechleitner@iteg_at 9.1 88 = {{id name="AdaptingPBAtonewDebianRelease-AdaptMinGWifnotdownduringFancyLibsadaptionabove"/}}Adapt [[MinGW>>doc:MINGW64.WebHome]] if not down during FancyLibs adaption above =
christoph_lechleitner@iteg_at 2.1 89
90 See [[doc:MINGW64.mingw 6 rebuild order.WebHome]].
91
christoph_lechleitner@iteg_at 7.1 92 === {{id name="AdaptingPBAtonewDebianRelease-MinGW-Adaptpba-hello*-portable"/}}MinGW-Adapt pba-hello*-portable ===
christoph_lechleitner@iteg_at 4.1 93
christoph_lechleitner@iteg_at 7.1 94 See above, with -o "unix|9" instead of "-o unix".
christoph_lechleitner@iteg_at 4.1 95
christoph_lechleitner@iteg_at 9.1 96 = {{id name="AdaptingPBAtonewDebianRelease-Adaptionsforphase2,oncenewreleaseissettled"/}}Adaptions for phase 2, once new release is settled =
christoph_lechleitner@iteg_at 2.1 97
98 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}}.
99
100 {{code}}
101 ${EDITOR:-vi} debian/changelog src/etc/pba/builder.conf.template src/lib/build-functions.pl
102
103 # commit
christoph_lechleitner@iteg_at 7.1 104 git commit -m "Making new Debian distro ${NEWDN} default for DefaultDistribution in pba-builder.conf"
christoph_lechleitner@iteg_at 2.1 105
106 # release it
107 pba-release
108 {{/code}}