4 TESTDIR
="$(readlink -f "$(dirname "$0")")"
7 configarchitecture 'i386'
9 buildsimplenativepackage 'unrelated' 'all' '1' 'unstable'
10 buildsimplenativepackage 'po-debconf' 'all' '1.0.16' 'unstable'
11 buildsimplenativepackage 'debhelper' 'all' '8.0.0' 'unstable' 'Depends: po-debconf'
14 testsuccess aptget install unrelated debhelper -y
15 testdpkginstalled 'unrelated' 'debhelper' 'po-debconf'
17 testmarkedauto 'po-debconf'
18 testsuccess aptget remove debhelper -y
19 testdpkgnotinstalled 'debhelper'
20 testdpkginstalled 'po-debconf' 'unrelated'
21 echo 'unrelated purge' | dpkg --set-selections
22 testdpkgstatus 'pi' '1' 'unrelated'
24 AUTOREMOVE='apt autoremove'
25 if [ -n "$SUDO_USER" ]; then
26 AUTOREMOVE="sudo
$AUTOREMOVE"
28 echo 'APT::NeverAutoRemove { "^debc.
*nf$
"; };' > rootdir/etc/apt/apt.conf.d/00autoremove
29 testsuccessequal 'Reading package lists...
30 Building dependency tree...
31 Reading state information...
32 The following packages will be REMOVED:
34 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
35 Remv po-debconf [1.0.16]' aptget autoremove -s
36 testequal "Reading package lists...
37 Building dependency tree...
38 Reading state information...
39 The following package was automatically installed and is no longer required
:
41 Use
'$AUTOREMOVE' to remove it.
42 0 upgraded
, 0 newly installed
, 0 to remove and
0 not upgraded.
" aptget install -s
43 testequal "Reading package lists...
44 Building dependency tree...
45 Reading state information...
46 1 package was automatically installed and is no longer required.
47 Use
'$AUTOREMOVE' to remove it.
48 0 upgraded
, 0 newly installed
, 0 to remove and
0 not upgraded.
" aptget install -s -o APT::Get::HideAutoRemove=small
49 testdpkginstalled 'po-debconf'
51 echo 'APT::NeverAutoRemove { "^po
-debconf$
"; };' > rootdir/etc/apt/apt.conf.d/00autoremove
52 testsuccess aptget autoremove -y
53 testdpkginstalled 'po-debconf'
54 testdpkgstatus 'pi' '1' 'unrelated'
56 echo 'APT::NeverAutoRemove { "^po
-.
*$
"; };' > rootdir/etc/apt/apt.conf.d/00autoremove
57 testsuccess aptget autoremove -y
58 testdpkginstalled "po
-debconf"
59 testdpkgstatus 'pi' '1' 'unrelated'
61 rm rootdir/etc/apt/apt.conf.d/00autoremove
62 testsuccess aptget autoremove -y
63 testdpkgnotinstalled 'po-debconf'
64 testdpkgstatus 'pi' '1' 'unrelated'
67 sed rootdir/var/log/apt/history.log -e '/^Commandline: / d' \
68 -e '/^Start-Date: / d' -e '/^End-Date: / d' \
69 -e '/^Requested-By: / d' \
70 -e 's#), #)\nInstall: #g' | sort -u > apt-history.log
71 testfileequal 'apt-history.log' '
72 Install: debhelper:i386 (8.0.0)
73 Install: po-debconf:i386 (1.0.16, automatic)
74 Install: unrelated:i386 (1)
75 Remove: debhelper:i386 (8.0.0)
76 Remove: po-debconf:i386 (1.0.16)'
78 testsuccess aptget install debhelper -y
79 testdpkgstatus 'pi' '1' 'unrelated'
80 testdpkginstalled 'debhelper' 'po-debconf'
81 testsuccess aptmark auto debhelper
83 testmarkedauto 'debhelper' 'po-debconf'
84 testsuccessequal 'Reading package lists...
85 Building dependency tree...
86 Reading state information...
87 The following packages will be REMOVED:
89 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
90 Remv debhelper [8.0.0]
91 Remv po-debconf [1.0.16]' aptget autoremove -s
92 testequal "Reading package lists...
93 Building dependency tree...
94 Reading state information...
95 The following packages were automatically installed and are no longer required
:
97 Use
'$AUTOREMOVE' to remove them.
98 0 upgraded
, 0 newly installed
, 0 to remove and
0 not upgraded.
" aptget install -s
99 testequal "Reading package lists...
100 Building dependency tree...
101 Reading state information...
102 2 packages were automatically installed and are no longer required.
103 Use
'$AUTOREMOVE' to remove them.
104 0 upgraded
, 0 newly installed
, 0 to remove and
0 not upgraded.
" aptget install -s -o APT::Get::HideAutoRemove=small
106 testsuccess aptmark hold debhelper
107 testsuccessequal 'Reading package lists...
108 Building dependency tree...
109 Reading state information...
110 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.' aptget autoremove -s
112 testsuccess aptget autoremove debhelper -y --allow-change-held-packages
113 testdpkgnotinstalled 'po-debconf' 'debhelper'
114 testdpkgstatus 'pi' '1' 'unrelated'
116 testsuccess aptget install debhelper --solver apt -y -o Debug::pkgDepCache::Marker=1
117 testmarkedauto 'po-debconf'
118 testdpkgstatus 'pi' '1' 'unrelated'
120 insertinstalledpackage 'bar' 'all' '1' 'Depends: foo-provider'
121 insertinstalledpackage 'foo-multi1-1' 'all' '1' 'Provides: foo-provider
122 Source: foo-multi (1)'
123 insertinstalledpackage 'foo-multi1-2' 'all' '1' 'Provides: foo-provider
124 Source: foo-multi (2)'
125 insertinstalledpackage 'foo-multi1-3' 'all' '1' 'Provides: foo-provider
126 Source: foo-multi (3)'
127 insertinstalledpackage 'foo-multi2-1' 'all' '1' 'Provides: foo-provider
128 Source: foo-multi (1)'
129 insertinstalledpackage 'foo-multi2-2' 'all' '1' 'Provides: foo-provider
130 Source: foo-multi (2)'
131 insertinstalledpackage 'foo-multi2-3' 'all' '1' 'Provides: foo-provider
132 Source: foo-multi (3)'
133 insertinstalledpackage 'foo-plus-1' 'all' '1' 'Provides: foo-provider
134 Source: foo-plus (1)'
135 insertinstalledpackage 'foo-plus-2' 'all' '1' 'Provides: foo-provider
136 Source: foo-plus (2)'
137 insertinstalledpackage 'foo-plus-3' 'all' '1' 'Provides: foo-provider
138 Source: foo-plus (3)'
139 insertinstalledpackage 'foo-single-1' 'all' '1' 'Provides: foo-provider'
140 insertinstalledpackage 'foo-single-2' 'all' '1' 'Provides: foo-provider'
142 testsuccess aptmark auto 'foo-*'
143 testsuccessequal 'Reading package lists...
144 Building dependency tree...
145 Reading state information...
146 The following packages will be REMOVED:
147 foo-multi1-1 foo-multi1-2 foo-multi2-1 foo-multi2-2 foo-plus-1 foo-plus-2
148 0 upgraded, 0 newly installed, 6 to remove and 0 not upgraded.
149 Remv foo-multi1-1 [1]
150 Remv foo-multi1-2 [1]
151 Remv foo-multi2-1 [1]
152 Remv foo-multi2-2 [1]
154 Remv foo-plus-2 [1]' apt autoremove -s
156 testdpkgstatus 'pi' '1' 'unrelated'
157 testsuccess apt purge unrelated -y