diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f079d9e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +aldrin-0.13.tar.gz diff --git a/aldrin-65a8db7be79e.diff b/aldrin-65a8db7be79e.diff new file mode 100644 index 0000000..e57d4ed --- /dev/null +++ b/aldrin-65a8db7be79e.diff @@ -0,0 +1,20 @@ +# HG changeset patch -- Bitbucket.org +# Project Aldrin +# URL http://bitbucket.org/paniq/aldrin/overview +# User jmmcd +# Date 1238628185 -3600 +# Node ID 65a8db7be79e5a55343fff33e0234702a2c04416 +# Parent 66f9f971fdf278d83f620cea4a7de3585d1d1c31 +Fix segfault in waveedit when deleting end of waveform. Fixes #16 on bitbucket. Thanks to bucket_brigade for the fix. + +--- a/src/aldrin/waveedit.py ++++ b/src/aldrin/waveedit.py +@@ -115,7 +115,7 @@ class WaveEditView(gtk.DrawingArea): + player = com.get('aldrin.core.player') + if self.selection: + begin,end = self.selection +- self.level.remove_sample_range(begin,end) ++ self.level.remove_sample_range(begin,end-1) + self.selection = None + player.history_commit("remove sample range") + self.sample_changed() diff --git a/aldrin-docfix.patch b/aldrin-docfix.patch new file mode 100644 index 0000000..ca8f360 --- /dev/null +++ b/aldrin-docfix.patch @@ -0,0 +1,68 @@ +diff -rupN aldrin.old/doc/SConscript aldrin/doc/SConscript +--- aldrin.old/doc/SConscript 2009-01-09 16:25:21.000000000 -0500 ++++ aldrin/doc/SConscript 2009-02-23 16:22:46.000000000 -0500 +@@ -31,4 +31,5 @@ install('${DOC_PATH}/images', + glob.glob('aldrin/images/*.gif') + + glob.glob('aldrin/images/*.png')) + +- ++install('${DOC_PATH}', ++ ['../ChangeLog', '../CREDITS', '../LICENCE']) +diff -rupN aldrin.old/SConstruct aldrin/SConstruct +--- aldrin.old/SConstruct 2009-01-09 16:25:21.000000000 -0500 ++++ aldrin/SConstruct 2009-02-23 16:20:14.000000000 -0500 +@@ -61,7 +61,7 @@ env['SITE_PACKAGE_PATH'] = distutils.sys + env['APPLICATIONS_PATH'] = '${DESTDIR}${PREFIX}/share/applications' + env['BIN_PATH'] = '${DESTDIR}${PREFIX}/bin' + env['SHARE_PATH'] = '${DESTDIR}${PREFIX}/share/aldrin' +-env['DOC_PATH'] = '${DESTDIR}${PREFIX}/share/doc/aldrin' ++env['DOC_PATH'] = '${DESTDIR}${PREFIX}/share/doc/aldrin-' + VERSION + env['ETC_PATH'] = '${DESTDIR}${ETCDIR}/aldrin' + env['ICONS_ALDRIN_PATH'] = '${DESTDIR}${PREFIX}/share/icons/aldrin' + env['ICONS_HICOLOR_PATH'] = '${DESTDIR}${PREFIX}/share/icons/hicolor' +diff -rupN aldrin.old/src/components/mainwindow.py aldrin/src/components/mainwindow.py +--- aldrin.old/src/components/mainwindow.py 2009-01-09 16:25:22.000000000 -0500 ++++ aldrin/src/components/mainwindow.py 2009-02-23 16:33:44.000000000 -0500 +@@ -44,7 +44,7 @@ show_preferences = preferences.show_pref + from aldrin.utils import CancelException + + import aldrin.com as com +- ++from about import VERSION + def cmp_view(a,b): + a_order = (hasattr(a, '__view__') and a.__view__.get('order',0)) or 0 + b_order = (hasattr(b, '__view__') and b.__view__.get('order',0)) or 0 +@@ -551,7 +551,7 @@ class AldrinFrame(gtk.Window): + @type event: MenuEvent + """ + import webbrowser +- webbrowser.open_new(filepath('../doc/aldrin/html/index.html')) ++ webbrowser.open_new(filepath('../doc/aldrin'+VERSION.split(" ")[0]+'/html/index.html')) + + def on_about(self, *args): + """ +diff -rupN aldrin.old/src/components/rack.py aldrin/src/components/rack.py +--- aldrin.old/src/components/rack.py 2009-01-09 16:25:22.000000000 -0500 ++++ aldrin/src/components/rack.py 2009-02-23 17:08:46.000000000 -0500 +@@ -30,7 +30,7 @@ from aldrin.utils import prepstr, filepa + get_item_count, question, error, new_listview, add_scrollbars, get_clipboard_text, set_clipboard_text, \ + gettext, new_stock_image_button, diff + import zzub +-import sys,os ++import sys,os,glob + import fnmatch + import ctypes + import time +@@ -728,9 +728,10 @@ class ParameterView(gtk.VBox): + """ + uri = filenameify(self.pluginloader.get_uri()) + name = filenameify(self.pluginloader.get_name()) ++ zzubdocpath = glob.glob("../doc/libzzub-*")[0] + helpfilepaths = [ +- filepath('../doc/zzub/plugins/' + uri + '/index.html'), +- filepath('../doc/zzub/plugins/' + name + '/index.html'), ++ filepath(zzubdocpath + '/plugins/' + uri + '/index.html'), ++ filepath(zzubdocpath + '/plugins/' + name + '/index.html'), + ] + for path in helpfilepaths: + print "searching for '%s'..." % path diff --git a/aldrin-firstdev.patch b/aldrin-firstdev.patch new file mode 100644 index 0000000..6256fc4 --- /dev/null +++ b/aldrin-firstdev.patch @@ -0,0 +1,42 @@ +diff -rupN aldrin.old/src/components/driver.py aldrin/src/components/driver.py +--- aldrin.old/src/components/driver.py 2009-01-09 16:25:22.000000000 -0500 ++++ aldrin/src/components/driver.py 2010-03-06 04:32:27.000000000 -0500 +@@ -155,22 +155,33 @@ class AudioDriver: + + # second round: if we didnt find them from the config, + # pick good alternatives. ++ ++ # regardless of what was chosen as input, if output ++ # has an input as well, prefer that one first. ++ # We also prefer the first device since it is usually the ++ # default system device. Unfortunately, the armstrong api ++ # does not provide us a default value. ++ if (output == -1 and input == -1): ++ for i in range(self.driver.get_count()): ++ if (self.driver.is_output(i) and self.driver.is_input(i)): ++ output = i ++ input = i ++ break + + if output == -1: + for i in range(self.driver.get_count()): + if self.driver.is_output(i): + output = i +- +- # regardless of what was chosen as input, if output +- # has an input as well, prefer that one first. +- if self.driver.is_input(output): +- input = output ++ break + + # take output channel if it supports input + if input == -1: + for i in range(self.driver.get_count()): + if self.driver.is_input(i): + input = i ++ break ++ if self.driver.is_input(output): ++ input = output + + if output == -1: + raise self.AudioInitException diff --git a/aldrin.spec b/aldrin.spec new file mode 100644 index 0000000..f196ddc --- /dev/null +++ b/aldrin.spec @@ -0,0 +1,138 @@ +%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5) +%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} +%endif + +Name: aldrin +Version: 0.13 +Release: 4%{?dist} +Summary: Modular music sequencer/tracker +Group: Applications/Multimedia +License: GPLv2+ +URL: http://code.google.com/p/aldrin-sequencer/ +Source0: http://aldrin-sequencer.googlecode.com/files/%{name}-%{version}.tar.gz +Patch0: aldrin-docfix.patch +# Choose the first detected device instead of last one. Prevents crashes on +# some systems I tried that supply multiple output devices per sound card. +# http://bitbucket.org/paniq/aldrin/issue/32/device-order-patch +Patch1: aldrin-firstdev.patch +# Fix segfault in waveedit when deleting end of waveform. +# http://bitbucket.org/paniq/aldrin/issue/16/segfault-when-deleting-the-end-of-a-wav +Patch2: aldrin-65a8db7be79e.diff +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildArch: noarch +BuildRequires: scons +BuildRequires: desktop-file-utils +Requires: pyzzub >= 0.2.6 +Requires: pygtk2 + +%description +Aldrin is a powerful music composition software featuring a flexible audio +routing system commonly found in expensive audio software, enabling you to mix, +split, mutilate and modify audio signals emitted by software synthesizers and +samples. + + +%prep +%setup -q -n %{name} +%patch0 -p1 -b .docfix +%patch1 -p1 -b .firstdev +%patch2 -p1 -b .delete.waveform + +%build +# Fix encoding +iconv --from-code=ISO-8859-1 --to-code=UTF-8 CREDITS > CREDITS~ +touch -r CREDITS CREDITS~ +%{__mv} CREDITS~ CREDITS + +# Fix permission +%{__chmod} 644 src/components/player.py + +%install +%{__rm} -rf $RPM_BUILD_ROOT +scons install PREFIX=%{_prefix} DESTDIR=$RPM_BUILD_ROOT + +desktop-file-install --vendor="fedora" \ + --remove-category="Application" \ + --add-category="Sequencer" \ + --delete-original \ + --dir=$RPM_BUILD_ROOT%{_datadir}/applications \ + $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop + +%clean +%{__rm} -rf $RPM_BUILD_ROOT + + +%post +update-desktop-database &> /dev/null || : +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%postun +update-desktop-database &> /dev/null || : +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%posttrans +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + + +%files +%defattr(-,root,root,-) +%{_bindir}/aldrin* +%config(noreplace) %{_sysconfdir}/%{name} +%{python_sitelib}/%{name} +%{_defaultdocdir}/%{name}-%{version} +%{_datadir}/%{name} +%{_datadir}/icons/%{name} +%{_datadir}/pixmaps/%{name} +%{_datadir}/applications/* +%{_datadir}/icons/hicolor/*/apps/* + +%changelog +* Sat Mar 06 2010 Orcan Ogetbil - 0.13-4 +- Change device order in autodetect. Prevents a possible crash. +- Fix segfault in waveedit when deleting end of waveform. +- Comply with new python guidelines + +* Wed Aug 05 2009 Orcan Ogetbil - 0.13-3 +- Update the .desktop file + +* Fri Jul 24 2009 Fedora Release Engineering - 0.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Fri Feb 27 2009 Orcan Ogetbil - 0.13-1 +- Update to version 0.13 + +* Mon Feb 23 2009 Fedora Release Engineering - 0.11-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Mon Dec 01 2008 Ignacio Vazquez-Abrams - 0.11-7 +- Rebuild for Python 2.6 + +* Fri Oct 5 2007 Alexander Kahl - 0.11-6 +- added ExludeArch for ppc64 to reflect libzzub unavailability on that arch + +* Thu Sep 27 2007 Alexander Kahl - 0.11-5 +- nailed to pyzzub version 0.2.3 for docpath compatibility + +* Tue Sep 25 2007 Alexander Kahl - 0.11-4 +- updated patch to fix referenced libzzub doc locations + +* Tue Sep 18 2007 Alexander Kahl - 0.11-3 +- generic sf.net source url +- adapted macros wherever feasible (both paths and commands) +- unified buildroot style +- removed redundant ldconfig update call +- new patch to rectify aldrin's installation doc directory and file list +- added missing python module requirement +- added update calls for GTK icon cache and desktop database + +* Tue Sep 18 2007 Alexander Kahl - 0.11-2 +- updated requires to new libzzub w/ integrated pyzzub +- removed redundant requires +- fixed rpm path macros +- fixed CREDITS encoding + +* Mon Sep 3 2007 Alexander Kahl - 0.11-1 +- initial release diff --git a/dead.package b/dead.package deleted file mode 100644 index f2396d2..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -Package is retired \ No newline at end of file diff --git a/sources b/sources new file mode 100644 index 0000000..9a6924e --- /dev/null +++ b/sources @@ -0,0 +1 @@ +6bdbd4a48883cc7d4734fef3055947b2 aldrin-0.13.tar.gz