This file is indexed.

/usr/share/gmusicbrowser/plugins/rip.pm is in gmusicbrowser 1.1.15~ds0-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# Copyright (C) 2005-2007 Quentin Sculo <squentin@free.fr>
#
# This file is part of Gmusicbrowser.
# Gmusicbrowser is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 3, as
# published by the Free Software Foundation

=for gmbplugin RIP
name	Rip
title	Rip plugin
desc	Add a button to rip a CD
=cut

package GMB::Plugin::RIP;
use strict;
use warnings;
use constant
{	OPT => 'PLUGIN_RIP_',#used to identify the plugin and its options
};

::SetDefaultOptions(OPT, program => 'soundjuicer');

my %Programs= #id => [name,cmd]
(	soundjuicer => ['sound-juicer','sound-juicer'],
	grip => ['grip','grip'],
	xcfa => ['xcfa','xcfa'],
	custom => [_"custom"],
);

my %button_definition=
(	class	=> 'Layout::Button',
	stock	=> 'plugin-rip',
	tip	=> _"Launch ripping program",
	activate=> \&Launch,
	autoadd_type	=> 'button main',
);

sub Start
{	Layout::RegisterWidget(PluginRip=>\%button_definition);
}
sub Stop
{	Layout::RegisterWidget('PluginRip');
}

sub prefbox
{	my $vbox=Gtk2::VBox->new(::FALSE, 2);
	my $sg1=Gtk2::SizeGroup->new('horizontal');
	my $sg2=Gtk2::SizeGroup->new('horizontal');
	my $entry=::NewPrefEntry(OPT.'custom', _"Custom command :", sizeg1=>$sg1,sizeg2=>$sg2, tip =>_('Command to launch when the button is pressed'));
	my %list= map {$_,$Programs{$_}[0]} keys %Programs;
	my $combo= ::NewPrefCombo
	 (	OPT.'program', \%list,
		text=> _"Ripping software :",
		cb=> sub { $entry->set_sensitive( $::Options{OPT.'program'} eq 'custom' ) },
		sizeg1=>$sg1, sizeg2=>$sg2
	 );
	$entry->set_sensitive( $::Options{OPT.'program'} eq 'custom' );
	$vbox->pack_start($_,::FALSE,::FALSE,2) for $combo,$entry;
	return $vbox;
}

sub Launch
{	my $program=$::Options{OPT.'program'};
	my $cmd=$program eq 'custom' ?
		 $::Options{OPT.'custom'} :
		 $Programs{$program}[1];
	::forksystem($cmd) if $cmd;
}

1;