Browse Source

initial commit, refs #323

master
Alf Gaida 9 years ago
commit
cc40376361

+ 8
- 0
Makefile View File

@@ -0,0 +1,8 @@
#!/usr/bin/make -f
all:
$(MAKE) -C po $@

clean:
$(MAKE) -C po $@

distclean: clean

+ 2040
- 0
debian/changelog
File diff suppressed because it is too large
View File


+ 1
- 0
debian/compat View File

@@ -0,0 +1 @@
8

+ 24
- 0
debian/control View File

@@ -0,0 +1,24 @@
Source: kernel-remover
Section: misc
Priority: extra
Maintainer: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Uploaders: Kel Modderman <kel@otaku42.de>,
Joaquim Boura <x-un-i@berlios.de>
Build-Depends: debhelper (>= 8)
Standards-Version: 3.9.2
Vcs-Svn: svn://svn.berlios.de/fullstory/kernel-remover/trunk
Vcs-Browser: http://svn.berlios.de/wsvn/fullstory/kernel-remover/trunk/

Package: kernel-remover
Architecture: all
Depends: ${misc:Depends},
gettext-base,
dctrl-tools,
ssft
Description: tool for the removal of the Linux kernel packages
This tool handles the common tasks while handling testing kernels, the removal
of deprecated kernel images, headers, depending packages, symlinks and
associated drivers. unpackaged cruft below /lib/modules/$KVERS will be nuked.
.
Neither the currently running-, nor the newest kernels will be offered for
removal.

+ 69
- 0
debian/copyright View File

@@ -0,0 +1,69 @@
This package was debianized by Stefan Lippers-Hollmann <s.l-h@gmx.de> on
Sat, 6 Aug 2005 13:26:07 +0200

It was downloaded from http://developer.berlios.de/projects/fullstory/

Files: *
Copyright: © 2005-2010 Stefan Lippers-Hollmann <s.l-h@gmx.de>
© 2007-2010 Joaquim Boura <x-un-i@berlios.de>
License: GPL-2
The kernel-remover tool is licensed under the GNU General Public License,
version 2.

Files: debian/*
Copyright: © 2005-2010 Stefan Lippers-Hollmann <s.l-h@gmx.de>
License: GPL-2
The Debian packaging information is licensed under the GNU General
Public License, version 2.

Files: icons/*
Copyright: © 2008 Bernard Gray <bernard.gray@gmail.com>
© 2007 David Vignoni <david@icon-king.com>
© 2007 Johann Ollivier Lapeyre <johann@oxygen-icons.org>
© 2007 Kenneth Wimer <kwwii@bootsplash.org>
© 2007 Nuno Fernades Pinheiro <nf.pinheiro@gmail.com>
© 2007 Riccardo Iaconelli <riccardo@oxygen-icons.org>
© 2007 David Miller <miller@oxygen-icons.org>
License: CC-ASA-3.0 | LGPL-2+
kernel-remover.svg also includes elements from The Oxygen Icon Theme.
Licensed under the Creative Common Attribution-ShareAlike 3.0
license, as found here:

http://creativecommons.org/licenses/by-sa/3.0/

or the GNU Library General Public License (with following clarification).

Clarification:
The GNU Lesser General Public License or LGPL is written for
software libraries in the first place. We expressly want the LGPL to
be valid for this artwork library too.

KDE Oxygen theme icons is a special kind of software library, it is an
artwork library, it's elements can be used in a Graphical User Interface, or
GUI.

Source code, for this library means:
- where they exist, SVG;
- otherwise, if applicable, the multi-layered formats xcf or psd, or
otherwise png.

The LGPL in some sections obliges you to make the files carry
notices. With images this is in some cases impossible or hardly useful.

With this library a notice is placed at a prominent place in the directory
containing the elements. You may follow this practice.

The exception in section 6 of the GNU Lesser General Public License covers
the use of elements of this art library in a GUI.

The complete text of the GNU General Public License, version 2, can be found at:
http://www.gnu.org/licenses/gpl-2.0.txt

The complete text of the GNU Library General Public License, can be found at:
http://www.gnu.org/licenses/old-licenses/library.html

On Debian systems, the complete text of the GNU General Public License,
version 2, can be found in `/usr/share/common-licenses/GPL-2'.

On Debian systems, the complete text of the GNU Lesser General Public License,
version 2, can be found in `/usr/share/common-licenses/LGPL-2'.

+ 6
- 0
debian/install View File

@@ -0,0 +1,6 @@
kernel-remover usr/sbin/
kernel-remover.desktop usr/share/applications/aptosid/
icons/kernel-remover.svg usr/share/icons/hicolor/scalable/apps/
icons/hicolor usr/share/icons
icons/pixmaps usr/share/
po/locale usr/share/

+ 1
- 0
debian/manpages View File

@@ -0,0 +1 @@
kernel-remover.8

+ 8
- 0
debian/menu View File

@@ -0,0 +1,8 @@
?package(kernel-remover): \
needs="X11" \
section="Applications/System/Administration" \
hints="aptosid,Config" \
title="remove old kernel" \
icon32x32="/usr/share/pixmaps/kernel-remover.xpm" \
icon16x16="/usr/share/pixmaps/kernel-remover-16.xpm" \
command="su-to-root -c /usr/sbin/kernel-remover"

+ 28
- 0
debian/rules View File

@@ -0,0 +1,28 @@
#!/usr/bin/make -f
%:
dh $@

create-icons:
# requires inkscape and imagemagick to be installed
@if [ ! -x /usr/bin/convert ]; then \
echo "ERROR: imagemagick not installed!" ; \
false ; \
fi
@if [ ! -x /usr/bin/inkscape ]; then \
echo "ERROR: inkscape not installed!" ; \
false ; \
fi
# create XDG compatible icons from SVG
for i in 16 22 32 48 64 128; do \
mkdir -p "icons/hicolor/$${i}x$${i}/apps" ; \
inkscape --export-width=$${i} \
--export-height=$${i} \
--export-png="$(CURDIR)/icons/hicolor/$${i}x$${i}/apps/kernel-remover.png" \
$(CURDIR)/icons/kernel-remover.svg ; \
done
# create XPM icons for the debian menu system
mkdir -p icons/pixmaps
convert icons/hicolor/32x32/apps/kernel-remover.png icons/pixmaps/kernel-remover.xpm
convert icons/hicolor/16x16/apps/kernel-remover.png icons/pixmaps/kernel-remover-16.xpm

+ 1
- 0
debian/source/format View File

@@ -0,0 +1 @@
3.0 (native)

+ 27
- 0
icons/Makefile View File

@@ -0,0 +1,27 @@
#!/usr/bin/make -f

NAME := kernel-remover
SVG := $(NAME).svg
SIZES := 16x16 22x22 32x32 48x48 64x64 128x128
ICONS := $(addsuffix .png,$(SIZES))
ICONS += $(addsuffix .xpm,$(NAME) $(NAME)-16)

all: $(ICONS)

%.png:
mkdir -p hicolor/$(@:.png=)/apps/
$(RM) hicolor/$(@:.png=)/apps/$(NAME).png
inkscape $(SVG) --without-gui \
--export-width=$(word 1,$(subst x, ,$(@:.png=))) \
--export-height=$(word 2,$(subst x, ,$(@:.png=))) \
--export-png=hicolor/$(@:.png=)/apps/$(NAME).png

$(NAME).xpm:
mkdir -p pixmaps/
$(RM) pixmaps/$@
convert hicolor/32x32/apps/$(NAME).png pixmaps/$@

$(NAME)-16.xpm:
mkdir -p pixmaps/
$(RM) pixmaps/$@
convert hicolor/16x16/apps/$(NAME).png pixmaps/$@

BIN
icons/hicolor/128x128/apps/kernel-remover.png View File


BIN
icons/hicolor/16x16/apps/kernel-remover.png View File


BIN
icons/hicolor/22x22/apps/kernel-remover.png View File


BIN
icons/hicolor/32x32/apps/kernel-remover.png View File


BIN
icons/hicolor/48x48/apps/kernel-remover.png View File


BIN
icons/hicolor/64x64/apps/kernel-remover.png View File


+ 1259
- 0
icons/kernel-remover.svg
File diff suppressed because it is too large
View File


+ 278
- 0
icons/pixmaps/kernel-remover-16.xpm View File

@@ -0,0 +1,278 @@
/* XPM */
static char *kernel_remover___[] = {
/* columns rows colors chars-per-pixel */
"16 16 256 2 ",
" c #B7A487",
". c None",
"X c #FFFFFF",
"o c #C6C8C2",
"O c #CACCC8",
"+ c #BFC1BD",
"@ c #B3B5B1",
"# c #A6A7A3",
"$ c #A7A9A5",
"% c #A8AAA4",
"& c #B4B7B1",
"* c #C1C5BD",
"= c #CCCFC8",
"- c #888A85",
"; c #FFFFFF",
": c #FFFFFF",
"> c #CBB99B",
", c #D1C4AD",
"< c #FFFFFF",
"1 c #D4D5D1",
"2 c #EAEBE8",
"3 c #E9EAE7",
"4 c #E8E9E6",
"5 c #E7E8E5",
"6 c #E6E8E4",
"7 c #E9EAE6",
"8 c #EAEAE6",
"9 c #EAEAE8",
"0 c #E4E5E1",
"q c #5B4F3A",
"w c #FFFFFF",
"e c #FFFFFF",
"r c #AE9D84",
"t c #AA9473",
"y c #7C7467",
"u c #D7D8D3",
"i c #A1AFBE",
"p c #95A9BE",
"a c #A2B0BE",
"s c #B3BCC5",
"d c #CED3D3",
"f c #E4E5E3",
"g c #E8EAE7",
"h c #E5E7E2",
"j c #C2C4BF",
"k c #6E552E",
"l c #FFFFFF",
"z c #FFFFFF",
"x c #000000",
"c c #B29772",
"v c #C5B8A3",
"b c #D9DBD6",
"n c #6B8EB7",
"m c #51749F",
"M c #444A51",
"N c #32445A",
"B c #3A6396",
"V c #4B7EBA",
"C c #618ABB",
"Z c #D8DDDA",
"A c #9D9E98",
"S c #785622",
"D c #FFFFFF",
"F c #FFFFFF",
"G c #FFFFFF",
"H c #C8B396",
"J c #C2B49B",
"K c #DADCD9",
"L c #6689B0",
"P c #2D2D2E",
"I c #111111",
"U c #000000",
"Y c #020305",
"T c #467BBC",
"R c #6D94D0",
"E c #DCDFD8",
"W c #8C8677",
"Q c #805A26",
"! c #FFFFFF",
"~ c #FFFFFF",
"^ c #FFFFFF",
"/ c #A99A83",
"( c #A69171",
") c #BEC4C5",
"_ c #567292",
"` c #999999",
"' c #111111",
"] c #676767",
"[ c #020202",
"{ c #4C709C",
"} c #80A1D5",
"| c #D7DBD4",
" . c #807155",
".. c #806A2B",
"X. c #FFFFFF",
"o. c #FFFFFF",
"O. c #FFFFFF",
"+. c #74745C",
"@. c #A28D76",
"#. c #A2998B",
"$. c #48585F",
"%. c #BEBE30",
"&. c #A9A12D",
"*. c #777673",
"=. c #0C0C0C",
"-. c #6081AA",
";. c #99B4DC",
":. c #D2D6CE",
">. c #796645",
",. c #FFFFFF",
"<. c #FFFFFF",
"1. c #FFFFFF",
"2. c #FFFFFF",
"3. c #9C7F62",
"4. c #A48E73",
"5. c #A68F71",
"6. c #9A885D",
"7. c #FDDB02",
"8. c #FFC000",
"9. c #A27113",
"0. c #020202",
"q. c #7C9ECB",
"w. c #B7C7E1",
"e. c #C8CCC4",
"r. c #78633E",
"t. c #FFFFFF",
"y. c #FFFFFF",
"u. c #FFFFFF",
"i. c #FFFFFF",
"p. c #A58769",
"a. c #B19877",
"s. c #B69871",
"d. c #C3A780",
"f. c #BB9D6C",
"g. c #EDC982",
"h. c #B5AD9E",
"j. c #030303",
"k. c #7791B3",
"l. c #CFD8E6",
"z. c #B0B2AB",
"x. c #755A30",
"c. c #634B27",
"v. c #FFFFFF",
"b. c #FFFFFF",
"n. c #FFFFFF",
"m. c #A5896B",
"M. c #B49E7E",
"N. c #AC8C63",
"B. c #B69A72",
"V. c #AE9674",
"C. c #DED5CC",
"Z. c #D9D9D9",
"A. c #020202",
"S. c #58677D",
"D. c #DFE2E7",
"F. c #949186",
"G. c #6F4F1F",
"H. c #856534",
"J. c #C2A26F",
"K. c #FFFFFF",
"L. c #FFFFFF",
"P. c #CCC9B7",
"I. c #B7A78D",
"U. c #997C59",
"Y. c #9C8565",
"T. c #B39877",
"R. c #A99072",
"E. c #B4B4BC",
"W. c #676A7A",
"Q. c #5A5C75",
"!. c #E9EBE7",
"~. c #8C8570",
"^. c #795925",
"/. c #70501F",
"(. c #94713A",
"). c #D3B17A",
"_. c #AAAA55",
"`. c #A59579",
"'. c #AA9779",
"]. c #AD8B5F",
"[. c #A17F54",
"{. c #AD8C63",
"}. c #A6885E",
"|. c #C3AD8F",
" X c #E9EAE4",
".X c #ECEEEA",
"XX c #EEF0EC",
"oX c #7E6E51",
"OX c #A5814B",
"+X c #9C7A44",
"@X c #97753F",
"#X c #A17E48",
"$X c #BF8040",
"%X c #B19265",
"&X c #B69265",
"*X c #B69360",
"=X c #AF8859",
"-X c #B18B5C",
";X c #BE9666",
":X c #A78559",
">X c #C3AB89",
",X c #EFEFE8",
"<X c #EBECE9",
"1X c #6D5C41",
"2X c #A7A7A7",
"3X c #857E73",
"4X c #947B52",
"5X c #856736",
"6X c #FFFFFF",
"7X c #FFFFFF",
"8X c #B0885D",
"9X c #C9A369",
"0X c #BC935D",
"qX c #B6915D",
"wX c #BE9361",
"eX c #B99062",
"rX c #BA9560",
"tX c #968066",
"yX c #888B86",
"uX c #595144",
"iX c #909090",
"pX c #6F6F6F",
"aX c #808080",
"sX c #FFFFFF",
"dX c #FFFFFF",
"fX c #FFFFFF",
"gX c #D7AE6B",
"hX c #C89D68",
"jX c #BD945E",
"kX c #C69E64",
"lX c #C29461",
"zX c #C9A06A",
"xX c #C59765",
"cX c #7FBF80",
"vX c #FFFFFF",
"bX c #FFFFFF",
"nX c #FFFFFF",
"mX c #FFFFFF",
"MX c #FFFFFF",
"NX c #FFFFFF",
"BX c #FFFFFF",
"VX c #FFFFFF",
"CX c #DBB66D",
"ZX c #BB9262",
"AX c #BB935C",
"SX c #DBA46D",
"DX c #FFFFFF",
"FX c #FFFFFF",
"GX c #FFFFFF",
"HX c #FFFFFF",
"JX c #FFFFFF",
"KX c #FFFFFF",
"LX c #FFFFFF",
"PX c #FFFFFF",
"IX c #FFFFFF",
"UX c #FFFFFF",
/* pixels */
" . X o O + @ # $ % & * = - ; : ",
"> , < 1 2 3 4 5 6 7 8 9 0 q w e ",
"r t y u i p a s d f g h j k l z ",
"x c v b n m M N B V C Z A S D F ",
"G H J K L P I U Y T R E W Q ! ~ ",
"^ / ( ) _ ` ' ] [ { } | ...X.o.",
"O.+.@.#.$.%.&.*.=.-.;.:.>.,.<.1.",
"2.3.4.5.6.7.8.9.0.q.w.e.r.t.y.u.",
"i.p.a.s.d.f.g.h.j.k.l.z.x.c.v.b.",
"n.m.M.N.B.V.C.Z.A.S.D.F.G.H.J.K.",
"L.P.I.U.Y.T.R.E.W.Q.!.~.^./.(.).",
"_.`.'.].[.{.}.|. X.XXXoXOX+X@X#X",
"$X%X&X*X=X-X;X:X>X,X<X1X2X3X4X5X",
"6X7X8X9X0XqXwXeXrXtXyXuXiXpXaXsX",
"dXfXgXhXjXkXlXzXxXcXvXbXnXmXMXNX",
"BXVXCXZXAXSXDXFXGXHXJXKXLXPXIXUX"
};

+ 294
- 0
icons/pixmaps/kernel-remover.xpm View File

@@ -0,0 +1,294 @@
/* XPM */
static char *kernel_remover[] = {
/* columns rows colors chars-per-pixel */
"32 32 256 2 ",
" c #010101",
". c #090909",
"X c #070C13",
"o c #0B1015",
"O c #141414",
"+ c #191919",
"@ c #221F11",
"# c #363600",
"$ c #181625",
"% c #1C2025",
"& c #242424",
"* c #2E2E2C",
"= c #3C372E",
"- c #252D38",
"; c #313131",
": c #3E3E3E",
"> c #555500",
", c #5B431E",
"< c #634416",
"1 c #6B4B1B",
"2 c #73521E",
"3 c #79561F",
"4 c #484339",
"5 c #6C5329",
"6 c #765523",
"7 c #7D5A23",
"8 c #7B5B2A",
"9 c #614E34",
"0 c #61523A",
"q c #7C5F32",
"w c #745E3A",
"e c #79623F",
"r c #233042",
"t c #29415E",
"y c #34465D",
"u c #384D67",
"i c #3E5977",
"p c #444543",
"a c #4C4C4C",
"s c #5B5443",
"d c #484F57",
"f c #565655",
"g c #6C5F46",
"h c #635F52",
"j c #6D614A",
"k c #766546",
"l c #6B675A",
"z c #6B6456",
"x c #404F61",
"c c #525F72",
"v c #516174",
"b c #666765",
"n c #6C6C6E",
"m c #787265",
"M c #747673",
"N c #7C7D76",
"B c #835600",
"V c #815F2B",
"C c #89652E",
"Z c #83622D",
"A c #8C6933",
"S c #856634",
"D c #906C35",
"F c #95733D",
"G c #856A49",
"H c #8E6D4B",
"J c #8C704A",
"K c #997740",
"L c #9E7C45",
"P c #93744D",
"I c #9A754A",
"U c #9F7E49",
"Y c #8A7154",
"T c #8A7559",
"R c #9C7D54",
"E c #9E7F58",
"W c #947856",
"Q c #A37D52",
"! c #A77F58",
"~ c #A87954",
"^ c #847B6A",
"/ c #8D7E6A",
"( c #907F67",
") c #7E817C",
"_ c #AAA807",
"` c #EEA805",
"' c #FFA701",
"] c #FFAD00",
"[ c #FFBB00",
"{ c #F5B30D",
"} c #FBB52F",
"| c #EDC809",
" . c #FFC500",
".. c #FFC900",
"X. c #FFD300",
"o. c #FFE000",
"O. c #FFEC00",
"+. c #FFF800",
"@. c #F3F30A",
"#. c #E2C929",
"$. c #9A815F",
"%. c #A58255",
"&. c #AC8A55",
"*. c #A4845B",
"=. c #AC855C",
"-. c #AD8A5C",
";. c #A88654",
":. c #B38D5D",
">. c #B38659",
",. c #BC925D",
"<. c #B5955F",
"1. c #9A856D",
"2. c #9C896D",
"3. c #97826A",
"4. c #978773",
"5. c #A58964",
"6. c #AC8B63",
"7. c #A18969",
"8. c #A88F6E",
"9. c #A58764",
"0. c #B38E62",
"q. c #BD8E64",
"w. c #AD926C",
"e. c #A7946C",
"r. c #B49264",
"t. c #BA9563",
"y. c #BE9864",
"u. c #B1946C",
"i. c #BA9A6F",
"p. c #A38F71",
"a. c #AC9679",
"s. c #B59A74",
"d. c #B89D7A",
"f. c #B1B167",
"g. c #BBA179",
"h. c #C19A65",
"j. c #C29C6B",
"k. c #C39762",
"l. c #CCA46B",
"z. c #DAAD6F",
"x. c #D2A46A",
"c. c #C5A676",
"v. c #D3B27A",
"b. c #325682",
"n. c #3364A2",
"m. c #496181",
"M. c #5C7188",
"N. c #4E6F99",
"B. c #58779B",
"V. c #667B99",
"C. c #4C77A9",
"Z. c #557BA5",
"A. c #4679B7",
"S. c #627FA5",
"D. c #3F7FCE",
"F. c #4279C8",
"G. c #5A7EC2",
"H. c #6B839C",
"J. c #7A8C9D",
"K. c #71859A",
"L. c #5F80A5",
"P. c #6C86A3",
"I. c #6989AE",
"U. c #7B84AB",
"Y. c #738EB0",
"T. c #4282CF",
"R. c #4780C5",
"E. c #5488C9",
"W. c #4C88D3",
"Q. c #508BD3",
"!. c #5E93D7",
"~. c #728BC4",
"^. c #7698C3",
"/. c #6C9FDD",
"(. c #789BD1",
"). c #74A3DE",
"_. c #78A2DD",
"`. c #77A5E1",
"'. c #878787",
"]. c #878984",
"[. c #93958E",
"{. c #88849C",
"}. c #889098",
"|. c #9C9C9C",
" X c #9B9893",
".X c #AB9F8C",
"XX c #A29683",
"oX c #9DA09A",
"OX c #BAA583",
"+X c #BBAA8C",
"@X c #A3A399",
"#X c #B9AD98",
"$X c #8889A2",
"%X c #8596A7",
"&X c #9A98AC",
"*X c #93A1AF",
"=X c #9FA9B3",
"-X c #ACAEA9",
";X c #AFB2AC",
":X c #B3B1AA",
">X c #A2ACB7",
",X c #A7B1BB",
"<X c #B4B5B3",
"1X c #BABBB6",
"2X c #BEBEBE",
"3X c #C3A983",
"4X c #C4AD8C",
"5X c #C4A982",
"6X c #C3B193",
"7X c #CAB393",
"8X c #C9B79B",
"9X c #CABBA3",
"0X c #FED381",
"qX c #CEC1A7",
"wX c #D2C2A6",
"eX c #D1C3AD",
"rX c #C8C6BC",
"tX c #D5CAB4",
"yX c #8A9CCD",
"uX c #9FABD6",
"iX c #BABFC2",
"pX c #A2B1D4",
"aX c #B6BFDE",
"sX c #82AEE4",
"dX c #88B2E7",
"fX c #8EB6EA",
"gX c #94BBEE",
"hX c #BEC7DB",
"jX c #9DC1F1",
"kX c #A7C6F3",
"lX c #C6C9C3",
"zX c #C9CCC6",
"xX c #C9CCCB",
"cX c #CED2CA",
"vX c #D2D4CC",
"bX c #D9D7CE",
"nX c #C1C4D3",
"mX c #D5D6D2",
"MX c #D6DAD3",
"NX c #DADCD6",
"BX c #D6DBDD",
"VX c #DCDED8",
"CX c #E1D9CA",
"ZX c #DEE1DB",
"AX c #E1E3DD",
"SX c #CCD2E5",
"DX c #DFE3EA",
"FX c #E5E6E2",
"GX c #E7E8E4",
"HX c #E9EAE6",
"JX c #ECEDEA",
"KX c #EFF1ED",
"LX c #F3F2EE",
"PX c #F3F3F1",
"IX c #FFFFFF",
"UX c None",
/* pixels */
"6X8XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
"wXOXtXUXUXUXUXlXNXmXcXlX2X1X-X-X-X-X-X;XUXUXUXUXUXUXUXUXUXUXUXUX",
"UX4XwXUXUXUXUXNXJXHXJXJXHXHXHXHXGXGXHXHXHXHXHXHXHXAXh UXUXUXUXUX",
"UX7X+XUXUXUXUXAXJXGXGXGXHXGXGXGXGXGXHXHXHXHXJXJXJXMX0 UXUXUXUXUX",
"UX7X8.qXUXUXUXGXGXAXAXGXGXGXFXFXGXGXGXHXHXJXJXGXZX<X5 UXUXUXUXUX",
"UXUXd.6XUXUXzXGX>XM.V.H.K.P.%X*X,XxXNXFXGXFXZXFXZX X6 UXUXUXUXUX",
"UXUX4Xw.eXUXcXFXJ.F.T.A.v d y v C.C.Z.L.I.V.NXVXZXM 6 UXUXUXUXUX",
"UXUX7X*.9XUXvXFXK.W.N.a 4 ; & O X n.D.T.!.F.BXVXNXl 7 UXUXUXUXUX",
"UXUXUXc.+XUXNXFXH.E.p ; & + . X A.Q.).G.ZXNXvXj V UXUXUXUXUX",
"UXUXUX7X8.tXVXMXP.N.& + . b.!._.~.ZXNX1Xw UXUXUXUXUXUX",
"UXUXUX9Xw.9XVXiXI.u |.'. O . t /.).yXNXMXoXe UXUXUXUXUXUX",
"UXUXUXUX4X+XvX>X^.- n <X f IX2X r `./.pXMXMX) Z UXUXUXUXUXUX",
"UXUXUXUX+X1..X}.(.& p f.# <X* <X& y sX`.hXmXvXb C UXUXUXUXUXUX",
"UXUXUXUX^ 3.2.m I.> @.+.O.#.@ <X m.dX`.NXmXcXh A UXUXUXUXUXUX",
"UXUXUXUXW 5.OX4.n _ O.o.X. .{ k P.dX(.NXMXlXg A UXUXUXUXUXUX",
"UXUXUXUX/ 1.E OX4Xe.| ..[ ] ' B ^.fXyXMXMX;Xe UXUXUXUXUXUXUX",
"UXUXUXUX2.u.6.g.5X4X;.` ' } 0X4 . Y.gXuXBXNX[.e UXUXUXUXUXUXUX",
"UXUXUXUXp.-.=.g.g.5Xd.+XLXIXIXM . V.jXhXZXZXm Z , UXUXUXUXUXUX",
"UXUXUXUXa.-.-.w.s.d.c.8.bXIXIX|. . c kXSXZXZXl 7 1 e UXUXUXUXUX",
"UXUXUXUX.X5.6.*.u.s.d.4.4.PXIX9X $ kXDXFXMXj 2 < 1 C c.UXUXUX",
"UXUXUXUX#X7.6.Q 5.2.2.w.9. X&X{.$ U.JXGXzXk 1 1 1 2 C v.UXUX",
"UXUXUXUXrX3.T Y T *.u.i.R 3.rXAXJXnXJ.{.HXJX<Xe 7 Z 6 3 Z A c.UX",
"UXUXUXUX@X7.P *.I *.*.u.r.P 7.NXGXHXHXJXKXKXoX6 UXL A C A D D UX",
"UXUXUXUXUXW P -.Q R =.-.i.H t.a.AXKXKXKXLXJX].2 UXUX;.%.L %.F D ",
"UXUXUXUXUXE %.-.;.R r.>.t.t.w j.d.AXJXLXPXGXN 1 UXUXUXUX<.&.K UX",
"UXUXUXUXUX! <.h.>.t.%.:.q.j.! R -.5.CXJXKXNXl , UXUXUXUXUXUXUXUX",
"UXUXUXUXUXP l.y.&.k.;.k.=.:.q.I &.9 Y XX:X<Xs 0 UXUXUXUXUXUXUXUX",
"UXUXUXUXUXUXy.z.>.,.:.<.>.>.y.>.J R G UX* f = UXUXUXUXUXUXUXUXUX",
"UXUXUXUXUXUX0.x.,.,.z.;.=.~ <.! I UXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
"UXUXUXUXUXUXP =.:.,.k.%.%.H UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
"UXUXUXUXUXUXG Q J I UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX"
};

+ 272
- 0
kernel-remover View File

@@ -0,0 +1,272 @@
#!/bin/sh
#
# we need gettext (is loaded in ssft.sh or cloned...)
if [ -f /usr/bin/gettext.sh ]; then
. /usr/bin/gettext.sh || exit 1
else
exit 1
fi
#---------------------------------------------------------------------
# we need root rights
#---------------------------------------------------------------------
if [ "$(id -u)" -ne 0 ]; then
if [ -x "$(which su-to-root)" ]; then
[ -n "$DISPLAY" ] && exec su-to-root -X -c "${0} $@"
exec su-to-root -c "${0} $@"
fi
printf "ERROR: $0 needs root capabilities, please start it as root.\n\n" >&2
exit 1
else
if test -n "$DISPLAY" && ! xset q > /dev/null 2>&1 ; then unset DISPLAY; fi
fi

TEXTDOMAIN="kernel-remover"
export TEXTDOMAIN
TEXTDOMAINDIR=/usr/share/locale
export TEXTDOMAINDIR

#---------------------------------------------------------------------
usage()
{
echo "$(basename $0)"
echo " -F parameter use parameter as the graphical frontend"
echo " one of text | dialog | kdialog | zenity "
echo " -f proceed without asking, do complete cleanup"
echo " -h show this usage"
exit 1
}
#---------------------------------------------------------------------
force=0
xtra=0
unset frontend
while getopts fhxF: name
do
case $name in
f) force=1;;
F) frontend="$OPTARG";;
h) usage;;
x) xtra=1;;
*) usage;;
esac
done
shift $(($OPTIND - 1))

#---------------------------------------------------------------------
prepare()
{
if [ "$force" -eq 0 ]; then
# we need ssft
if [ -f /usr/bin/ssft.sh ]; then
. /usr/bin/ssft.sh || exit 1
else
echo "Please install the package \"ssft\"."
exit 1
fi
fi

if [ -n "${frontend}" ]; then
case $frontend in
text) SSFT_FRONTEND="${frontend}";;
dialog) SSFT_FRONTEND="${frontend}";;
kdialog) SSFT_FRONTEND="${frontend}";;
zenity) SSFT_FRONTEND="${frontend}";;
*) echo unknown frontend && exit 1;;
esac
fi

if [ -z "$DISPLAY" ] && ! /usr/bin/xdpyinfo >/dev/null 2>&1 ; then
unset DISPLAY
fi
if [ -z "$DISPLAY" ]; then
[ -x /usr/bin/dialog ] && SSFT_FRONTEND=${SSFT_FRONTEND:-"dialog"} || \
SSFT_FRONTEND=${SSFT_FRONTEND:-"text"}
else
if [ -n "$DISPLAY" ] && [ ! -x /usr/bin/zenity ]; then
if [ -x /usr/bin/dialog ]; then
SSFT_FRONTEND="dialog"
else
SSFT_FRONTEND="text"
fi
DISPLAY=""
else
SSFT_FRONTEND=${SSFT_FRONTEND:-"zenity"}
fi
fi

# the current one will not be shown in the list ....

ACTUAL=$(uname -r)
TITLE="$(gettext "Removing installed kernels")"
PAD="======="

[ "${SSFT_FRONTEND}" = "dialog" -o -z "${SSFT_FRONTEND}" ] && \
CURRENT="$(eval_gettext "The actual (active) kernel is ${PAD}$(uname -r)${PAD}")" || \
CURRENT="$(eval_gettext "The actual (active) kernel is $(uname -r)")"

}
#---------------------------------------------------------------------
# some useful functions
#---------------------------------------------------------------------
inputbox()
{
# inputbox Title Text dummy default
Title="$1"
Text="$2"
# $3 not used
# The default value if used
SSFT_DEFAULT=$4
ssft_read_string "${Title}" "${Text}";
}

#---------------------------------------------------------------------
msgbox()
{
# msgbox title text
Title="$1"
Text="$2"
ssft_display_message "${Title}" "${Text}"
}
#---------------------------------------------------------------------
select_more()
{
# select one of a list
Title=$1
Text=$2
shift 2
if ssft_select_multiple "$Title" "$Text" $@ ; then
Selected=$SSFT_RESULT
return 0
else
return 1
fi
}
#---------------------------------------------------------------------
yesno()
{
# yesno title text width
Title=$1
Text=$2
ssft_yesno "${Title}" "${Text}"
return $?
}

#---------------------------------------------------------------------
remove_one_kernel()
{
Kernel=$1
if [ "${Kernel}" != "${ACTUAL}" ]; then
apt-get remove --purge --yes $(dpkg -l | awk "/${Kernel}/{print \$2}")

dpkg -l "linux-headers-${Kernel}-common" >/dev/null 2>&1 && \
apt-get remove --purge --yes "linux-headers-${Kernel}-common"
dpkg -l "linux-support-${Kernel}" >/dev/null 2>&1 && \
apt-get remove --purge --yes "linux-support-${Kernel}"

# dispose make install artefacts
if [ ! -e "/boot/vmlinuz-${Kernel}" ]; then
rm -rf /lib/modules/${Kernel}
fi
else
# do not remove active kernel
:
fi
}

#---------------------------------------------------------------------


get_KernelList()
{
for v in /boot/vmlinuz-*; do
Kernel="$(basename $v | sed s/vmlinuz-//)"
if [ "${Kernel}" != "${ACTUAL}" ]; then
meta_package="$(echo $(grep-available \
-F Depends linux-image-${Kernel} \
-s Package) | cut -d: -f 2)"

case $meta_package in
*$Kernel* ) # this is an old style kernel
KernelList="${KernelList} ${Kernel}"
continue
;;
esac
[ -n "${meta_package}" ] && \
meta_status="$(dpkg-query -f='${STATUS}\n' \
-W ${meta_package}|\
cut -d ' ' -f 3)" || \
meta_status="not-installed"

if [ "${meta_status}" = "not-installed" ]; then
[ -z "${KernelList}" ] && KernelList="${Kernel}" ||\
KernelList="${KernelList} ${Kernel}"
# echo KernelList="$KernelList"
else
:
fi
fi
done
}

#---------------------------------------------------------------------
# Main
#---------------------------------------------------------------------
if [ "${xtra}" -eq 1 ]; then
KernelList="$@"
for i in ${KernelList} ; do
removing="$(eval_gettext "removing kernel ${i}")"
echo $removing
remove_one_kernel "$i"
done
MSG="$(eval_gettext "the following kernels have been removed: \"${KernelList}\"")"
echo $MSG
exit 0
fi

prepare

get_KernelList

if [ -z "${KernelList}" ]; then
MSG="$(gettext "There is only one kernel installed on this system. Nothing to be done!")"
if [ "${force}" -eq 1 ]; then
echo "${MSG}"
else
msgbox "${TITLE}" "${MSG}"
fi
exit 0
fi

if [ "${force}" -eq 1 ]; then
current="$(eval_gettext "The actual (active) kernel is $(uname -r)")"
echo ${current}
for i in ${KernelList} ; do
removing="$(eval_gettext "removing kernel ${i}")"
echo $removing
remove_one_kernel "$i"
done
MSG="$(eval_gettext "the following kernels have been removed: \"${KernelList}\"")"
echo $MSG
else
select_more "${TITLE}" "${CURRENT}" ${KernelList}
if [ "$?" -ne 0 ]; then
exit 10
fi
if [ -z "${SSFT_RESULT}" ]; then
exit 12
fi

one_removed=false
for i in ${SSFT_RESULT}; do
MSG="$i : $(gettext "Should I remove this kernel?") "
yesno "${TITLE}" "${MSG}"

if [ "$?" -eq 0 ]; then
remove_one_kernel "$i"
one_removed=true
else
msgbox "${TiTLE}" "$(gettext "Kernel not removed:") $i"
fi
done
fi

exit 0

+ 28
- 0
kernel-remover.8 View File

@@ -0,0 +1,28 @@
.TH KERNEL-REMOVER "8" "March 2008" "" ""
.SH NAME
kernel-remover \- removes aptosid kernels
.SH SYNOPSIS
\fBkernel-remover\fR \fI<options>\fR
.SH DESCRIPTION
removes \fBaptosid\fR kernels (and probably other ones too) from a system \fR
running \fBaptosid.\fR
.PP
.SH OPTIONS
.TP
\fB\-h\fR
print help screen
.TP
\fB\-F \fI<graphic-frontend>\fR
uses \fI<graphic-frontend>\fR as the graphic frontend for the output\fR
possible frontends are \fBtext\fR | \fBdialog\fR | \fBkdialog\fR | \fBzenity\fR
.TP
\fB\-f\fR
force remove all kernels except the running one. No confirmation is asked,\fR
do it immediately.
.TP
\fB\-x \fI<kernel_list>\fR
remove the kernel(s) given in the parameter list using the output of
\fIuname \-r\fR No confirmation is asked, do it immediately.
.PP
.SH AUTHOR
This manual page was written by Joaquim Boura <x-un-i@aptosid.com>.

+ 8
- 0
kernel-remover.desktop View File

@@ -0,0 +1,8 @@
[Desktop Entry]
Type=Application
Exec=su-to-root -X -c /usr/sbin/kernel-remover
Icon=kernel-remover
Name=kernel-remover
GenericName=delete old kernels
GenericName[de]=entferne alte Kernel
Categories=System;

+ 16
- 0
po/Makefile View File

@@ -0,0 +1,16 @@
#!/usr/bin/make -f

PO := $(wildcard *.po)
MO := kernel-remover.mo

all: $(PO)

%.po: FORCE
mkdir -p locale/$(@:.po=)/LC_MESSAGES
msgfmt -o locale/$(@:.po=)/LC_MESSAGES/$(MO) $@
FORCE:

clean:
$(RM) -r locale

distclean: clean

+ 47
- 0
po/de.po View File

@@ -0,0 +1,47 @@
# Fancy skript to remove the installed aptosid kernels
# Copyright (C) 2007-2010 Joaquim Boura <x-un-i@berlios.de>
# This file is distributed under the same license as the PACKAGE package.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: kernel-remover.sh 0.00.1\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2008-03-29 00:01+0000\n"
"Last-Translator: Joaquim Boura <x-un-i@berlios.de>\n"
"Language-Team: aptosid <translation-team@aptosid.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: kernel-remover:94
msgid "Removing installed kernels"
msgstr "Entfernen installierten Kernels"

#: kernel-remover:98
msgid "The actual (active) kernel is ${PAD}$(uname -r)${PAD}"
msgstr "Der aktuelle (akive) Kernel ist ${PAD}$(uname -r)${PAD}"

#: kernel-remover:99
msgid "The actual (active) kernel is $(uname -r)"
msgstr "Der aktuelle (akive) Kernel ist $(uname -r)"

#: kernel-remover:213
msgid "There is only one kernel installed on this system. Nothing to be done!"
msgstr "Dieses System hat nur einen Kernel installiert. Nichts zu tun!"

#: kernel-remover:222
msgid "removing kernel ${i}"
msgstr "Kernel ${i} wird entfernt."

#: kernel-remover:226
msgid "The following kernels have been removed: \"${KernelList}\""
msgstr "Folgende Kernel sind entfernt worden: \"${KernelList}\""

#: kernel-remover:240
msgid "Should I remove this kernel?"
msgstr "Soll dieser Kernel entfernt werden?"

#: kernel-remover:247
msgid "Kernel not removed:"
msgstr "Kernel wurde nicht entfernt:"

+ 48
- 0
po/messages.pot View File

@@ -0,0 +1,48 @@
# Fancy skript to remove the installed aptosid kernels
# Copyright (C) 2007-2010 Joaquim Boura <x-un-i@berlios.de>
# This file is distributed under the same license as the PACKAGE package.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: kernel-remover 0.00.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-03-29 16:04+0100\n"
"PO-Revision-Date: 2008-03-29 00:01+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: aptosid <translation-team@aptosid.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: kernel-remover:94
msgid "Removing installed kernels"
msgstr ""

#: kernel-remover:98
msgid "The actual (active) kernel is ${PAD}$(uname -r)${PAD}"
msgstr ""

#: kernel-remover:99
msgid "The actual (active) kernel is $(uname -r)"
msgstr ""

#: kernel-remover:213
msgid "There is only one kernel installed on this system. Nothing to be done!"
msgstr ""

#: kernel-remover:222
msgid "removing kernel ${i}"
msgstr ""

#: kernel-remover:226
msgid "The following kernels have been removed: \"${KernelList}\""
msgstr ""

#: kernel-remover:240
msgid "Should I remove this kernel?"
msgstr ""

#: kernel-remover:247
msgid "Kernel not removed:"
msgstr ""

+ 6
- 0
po/po.sh View File

@@ -0,0 +1,6 @@
#!/bin/bash

{
bash --dump-po-strings kernel-remover

} | msguniq > po/messages.pot

+ 47
- 0
po/pt.po View File

@@ -0,0 +1,47 @@
# Fancy skript to remove the installed aptosid kernels
# Copyright (C) 2007-2010 Joaquim Boura <x-un-i@berlios.de>
# This file is distributed under the same license as the PACKAGE package.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: kernel-remover.sh 0.00.1\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2008-03-29 00:01+0000\n"
"Last-Translator: Joaquim Boura <x-un-i@berlios.de>\n"
"Language-Team: aptosid <translation-team@aptosid.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: kernel-remover:94
msgid "Removing installed kernels"
msgstr "Remoção de kernel instalados e nâo activos"

#: kernel-remover:98
msgid "The actual (active) kernel is ${PAD}$(uname -r)${PAD}"
msgstr "O kernel actualmente activo é ${PAD}$(uname -r)${PAD}"

#: kernel-remover:99
msgid "The actual (active) kernel is $(uname -r)"
msgstr "O kernel actualmente activo é $(uname -r)"

#: kernel-remover:213
msgid "There is only one kernel installed on this system. Nothing to be done!"
msgstr "Só está um kernel installado neste sistema. Nao há nada para fazer!"

#: kernel-remover:222
msgid "removing kernel ${i}"
msgstr "Removendo o Kernel ${i}"

#: kernel-remover:226
msgid "The following kernels have been removed: \"${KernelList}\""
msgstr "Os seguintes Kernelis foram removidos da instalação: \"${KernelList}\""

#: kernel-remover:240
msgid "Should I remove this kernel?"
msgstr "Remover este kernel?"

#: kernel-remover:247
msgid "Kernel not removed:"
msgstr "Kernel não foi removido:"

Loading…
Cancel
Save