Gentoo Archives: gentoo-commits

From: Andrew Savchenko <bircoph@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-cdr/xcdroast/, app-cdr/xcdroast/files/
Date: Thu, 07 Jul 2016 18:55:20
Message-Id: 1467917692.4755d711c314606043af7c55c0675d89d0c4b618.bircoph@gentoo
1 commit: 4755d711c314606043af7c55c0675d89d0c4b618
2 Author: Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
3 AuthorDate: Thu Jul 7 18:47:42 2016 +0000
4 Commit: Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
5 CommitDate: Thu Jul 7 18:54:52 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4755d711
7
8 app-cdr/xcdroast: fix for the bug 345337
9
10 - Replace suid helper permissions from 4755 to 4711 as suggested by
11 Faustus in comment 1.
12 - Port ebuild to EAPI=6.
13 - Apply upstream patch for progress bar with modern cdrtools.
14
15 Package-Manager: portage-2.3.0
16 Signed-off-by: Andrew Savchenko <bircoph <AT> gentoo.org>
17
18 .../xcdroast/files/fix_cddb_hidden_tracks.patch | 4 +-
19 app-cdr/xcdroast/files/io_compile.patch | 4 +-
20 app-cdr/xcdroast/files/io_progressbar_fix.patch | 39 +++++++++++
21 app-cdr/xcdroast/files/suid-perms.patch | 36 ++++++++++
22 app-cdr/xcdroast/xcdroast-0.98_alpha16-r2.ebuild | 78 ++++++++++++++++++++++
23 5 files changed, 157 insertions(+), 4 deletions(-)
24
25 diff --git a/app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch b/app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch
26 index d2e15ef..ca532f2 100644
27 --- a/app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch
28 +++ b/app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch
29 @@ -1,5 +1,5 @@
30 ---- src/io.c
31 -+++ src/io.c
32 +--- a/src/io.c
33 ++++ b/src/io.c
34 @@ -2665,6 +2665,8 @@
35 g_error("Unexpected output in cdda2wav toc-output\n");
36 }
37
38 diff --git a/app-cdr/xcdroast/files/io_compile.patch b/app-cdr/xcdroast/files/io_compile.patch
39 index 7285bd3..339523d 100644
40 --- a/app-cdr/xcdroast/files/io_compile.patch
41 +++ b/app-cdr/xcdroast/files/io_compile.patch
42 @@ -1,5 +1,5 @@
43 ---- src/io.c.org 2009-02-24 09:38:27.000000000 +0100
44 -+++ src/io.c 2009-02-24 09:45:18.000000000 +0100
45 +--- a/src/io.c.org 2009-02-24 09:38:27.000000000 +0100
46 ++++ b/src/io.c 2009-02-24 09:45:18.000000000 +0100
47 @@ -1903,7 +1903,8 @@
48 }
49
50
51 diff --git a/app-cdr/xcdroast/files/io_progressbar_fix.patch b/app-cdr/xcdroast/files/io_progressbar_fix.patch
52 new file mode 100644
53 index 0000000..745af45
54 --- /dev/null
55 +++ b/app-cdr/xcdroast/files/io_progressbar_fix.patch
56 @@ -0,0 +1,39 @@
57 +--- a/src/io.c.last So. Jan 24 19:18:45 2010
58 ++++ b/src/io.c Fr. Jul 16 10:59:32 2010
59 +@@ -3202,6 +3202,8 @@
60 + close(fd2[1]);
61 + }
62 +
63 ++ g_setenv("LC_ALL", "C", TRUE);
64 ++
65 + /* startup child */
66 + if (execl("/bin/sh", "sh", "-c", cmd ,(void *)NULL) < 0) {
67 + g_error("execl error\n");
68 +@@ -3402,6 +3404,8 @@
69 + close(fd3[1]);
70 + }
71 +
72 ++ g_setenv("LC_ALL", "C", TRUE);
73 ++
74 + /* startup child */
75 + if (execv(callpath,arglist) < 0) {
76 + g_error("execv error\n");
77 +@@ -3506,6 +3510,8 @@
78 + close(pipefd[1]);
79 + }
80 +
81 ++ g_setenv("LC_ALL", "C", TRUE);
82 ++
83 + /* startup first child */
84 + if (execv(callpath,arglist) < 0) {
85 + g_error("execv error\n");
86 +@@ -3568,6 +3574,8 @@
87 + close(fd3[1]);
88 + }
89 +
90 ++ g_setenv("LC_ALL", "C", TRUE);
91 ++
92 + /* startup second child */
93 + if (execv(callpath2,arglist2) < 0) {
94 + g_error("execv error\n");
95 +
96
97 diff --git a/app-cdr/xcdroast/files/suid-perms.patch b/app-cdr/xcdroast/files/suid-perms.patch
98 new file mode 100644
99 index 0000000..1c804bc
100 --- /dev/null
101 +++ b/app-cdr/xcdroast/files/suid-perms.patch
102 @@ -0,0 +1,36 @@
103 +diff -Naurd xcdroast-0.98alpha16.orig/doc/README.nonroot xcdroast-0.98alpha16/doc/README.nonroot
104 +--- xcdroast-0.98alpha16.orig/doc/README.nonroot 2003-10-27 23:37:40.000000000 +0300
105 ++++ xcdroast-0.98alpha16/doc/README.nonroot 2016-07-07 21:32:35.006587826 +0300
106 +@@ -72,7 +72,7 @@
107 + Please change now to the corresponding directory and enter:
108 +
109 + chown root xcdrwrap
110 +- chmod 4755 xcdrwrap
111 ++ chmod 4711 xcdrwrap
112 +
113 +
114 + Usage of the non-root-mode
115 +diff -Naurd xcdroast-0.98alpha16.orig/src/init.c xcdroast-0.98alpha16/src/init.c
116 +--- xcdroast-0.98alpha16.orig/src/init.c 2008-08-20 20:20:23.000000000 +0400
117 ++++ xcdroast-0.98alpha16/src/init.c 2016-07-07 21:32:35.006587826 +0300
118 +@@ -670,7 +670,7 @@
119 +
120 + /* check file mode of wrapper */
121 + if (stat(tmp,&buf) == 0) {
122 +- if (buf.st_mode != 0104755) {
123 ++ if (buf.st_mode != 0104711) {
124 + dodebug(3,"Note: %s wrong modes set (0%o)\n", tmp, buf.st_mode);
125 + nofail = 0;
126 + }
127 +diff -Naurd xcdroast-0.98alpha16.orig/src/io.c xcdroast-0.98alpha16/src/io.c
128 +--- xcdroast-0.98alpha16.orig/src/io.c 2008-08-21 17:11:40.000000000 +0400
129 ++++ xcdroast-0.98alpha16/src/io.c 2016-07-07 21:32:35.003587931 +0300
130 +@@ -10380,7 +10380,7 @@
131 + strcat(ret,tmp);
132 + #endif
133 + /* old nonroot mode - 2755 */
134 +- g_snprintf(tmp,MAXLINE,"%s 4755 %s\n", cmd_chmod, bin);
135 ++ g_snprintf(tmp,MAXLINE,"%s 4711 %s\n", cmd_chmod, bin);
136 + strcat(ret,tmp);
137 +
138 +
139
140 diff --git a/app-cdr/xcdroast/xcdroast-0.98_alpha16-r2.ebuild b/app-cdr/xcdroast/xcdroast-0.98_alpha16-r2.ebuild
141 new file mode 100644
142 index 0000000..d2afede
143 --- /dev/null
144 +++ b/app-cdr/xcdroast/xcdroast-0.98_alpha16-r2.ebuild
145 @@ -0,0 +1,78 @@
146 +# Copyright 1999-2016 Gentoo Foundation
147 +# Distributed under the terms of the GNU General Public License v2
148 +# $Id$
149 +
150 +EAPI=6
151 +inherit gnome2-utils
152 +
153 +DESCRIPTION="Lightweight cdrtools front-end for CD and DVD writing"
154 +HOMEPAGE="http://www.xcdroast.org/"
155 +SRC_URI="mirror://sourceforge/xcdroast/${P/_/}.tar.gz"
156 +
157 +LICENSE="GPL-2"
158 +SLOT="0"
159 +KEYWORDS="~amd64 ~ppc ~sparc ~x86"
160 +IUSE="nls"
161 +
162 +RDEPEND=">=x11-libs/gtk+-2:2
163 + app-cdr/cdrtools"
164 +DEPEND="${RDEPEND}
165 + sys-devel/gettext
166 + virtual/pkgconfig"
167 +
168 +S=${WORKDIR}/${P/_/}
169 +
170 +PATCHES=(
171 + "${FILESDIR}"/cdda2wav_version.patch
172 + "${FILESDIR}"/fix_cddb_hidden_tracks.patch
173 + "${FILESDIR}"/io_compile.patch
174 + "${FILESDIR}"/io_progressbar_fix.patch
175 + "${FILESDIR}"/suid-perms.patch
176 +)
177 +
178 +DOCS=( AUTHORS ChangeLog README doc )
179 +src_prepare() {
180 + default
181 +
182 + # fix Norwegian locales
183 + mv po/{no,nb}.po || die
184 + mv po/{no,nb}.gmo || die
185 + sed -i -e 's/no/nb/' po/LINGUAS || die
186 +}
187 +
188 +src_configure() {
189 + econf \
190 + $(use_enable nls) \
191 + --enable-gtk2 \
192 + --disable-dependency-tracking \
193 + --mandir=/usr/share/man \
194 + --sysconfdir=/etc
195 +}
196 +
197 +src_compile() {
198 + emake PREFIX=/usr
199 +}
200 +
201 +src_install() {
202 + emake PREFIX=/usr DESTDIR="${D}" install
203 +
204 + insinto /usr/share/doc/${PF}/manual
205 + doins doc/manual/xcdroast-manual.pdf
206 +
207 + insinto /usr/share/icons/hicolor/48x48/apps
208 + newins xpms/xcdricon.xpm xcdroast.xpm
209 +
210 + make_desktop_entry xcdroast "X-CD-Roast" xcdroast "AudioVideo;DiscBurning"
211 +}
212 +
213 +pkg_preinst() {
214 + gnome2_icon_savelist
215 +}
216 +
217 +pkg_postinst() {
218 + gnome2_icon_cache_update
219 +}
220 +
221 +pkg_postrm() {
222 + gnome2_icon_cache_update
223 +}