diff options
Diffstat (limited to 'zarb-ml/mageia-dev/2012-April/014105.html')
-rw-r--r-- | zarb-ml/mageia-dev/2012-April/014105.html | 875 |
1 files changed, 875 insertions, 0 deletions
diff --git a/zarb-ml/mageia-dev/2012-April/014105.html b/zarb-ml/mageia-dev/2012-April/014105.html new file mode 100644 index 000000000..49ece54ec --- /dev/null +++ b/zarb-ml/mageia-dev/2012-April/014105.html @@ -0,0 +1,875 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> +<HTML> + <HEAD> + <TITLE> [Mageia-dev] bumblebee in mageia (and mentoring) + </TITLE> + <LINK REL="Index" HREF="index.html" > + <LINK REL="made" HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20bumblebee%20in%20mageia%20%28and%20mentoring%29&In-Reply-To=%3C201204102112.53569.alien%40rmail.be%3E"> + <META NAME="robots" CONTENT="index,nofollow"> + <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <LINK REL="Previous" HREF="014104.html"> + <LINK REL="Next" HREF="014106.html"> + </HEAD> + <BODY BGCOLOR="#ffffff"> + <H1>[Mageia-dev] bumblebee in mageia (and mentoring)</H1> + <B>Maarten Vanraes</B> + <A HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20bumblebee%20in%20mageia%20%28and%20mentoring%29&In-Reply-To=%3C201204102112.53569.alien%40rmail.be%3E" + TITLE="[Mageia-dev] bumblebee in mageia (and mentoring)">alien at rmail.be + </A><BR> + <I>Tue Apr 10 21:12:53 CEST 2012</I> + <P><UL> + <LI>Previous message: <A HREF="014104.html">[Mageia-dev] bumblebee in mageia (and mentoring) +</A></li> + <LI>Next message: <A HREF="014106.html">[Mageia-dev] bumblebee in mageia (and mentoring) +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#14105">[ date ]</a> + <a href="thread.html#14105">[ thread ]</a> + <a href="subject.html#14105">[ subject ]</a> + <a href="author.html#14105">[ author ]</a> + </LI> + </UL> + <HR> +<!--beginarticle--> +<PRE>i have some sparsely extra comments, i hope i'm correct on this... + + +Op dinsdag 10 april 2012 20:35:26 schreef simple w8: +><i> 2012/4/10 Anssi Hannula <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">anssi at mageia.org</A>>: +</I>><i> > 10.04.2012 07:46, simple w8 kirjoitti: +</I>><i> >> Currently i dont have any account to be able to comit these new +</I>><i> >> packages for the distro so i ask if someone can review the specs so +</I>><i> >> that these packages can start existing in the distro, and i also ask +</I>><i> >> if theres someone that can help me with mentoring +</I>><i> > +</I>><i> > Reviewed below. However, there looks to be quite a lot of work +</I>><i> > remaining, so I don't think I'll be able to help you personally with the +</I>><i> > issues. I hope you'll find a mentor who'll help you through. +</I>><i> > +</I>><i> >> Name: libbsd +</I>><i> >> Summary: Library providing BSD-compatible functions for portability +</I>><i> >> +</I>><i> >>[...] +</I>><i> >> +</I>><i> >> %{_libdir}/libbsd.so.%{major}* +</I>><i> > +</I>><i> > [...] +</I>><i> > +</I>><i> >> %{_libdir}/libbsd.so +</I>><i> > +</I>><i> > [...] +</I>><i> > +</I>><i> > We already have libbsd.a from glibc-devel, which would conflict with +</I>><i> > this. If they are really different libraries, something drastic would +</I>><i> > have to be done (e.g. renaming or dropping one). I suspect they are the +</I>><i> > same, though, in which case this isn't needed. +</I>><i> > +</I>><i> >> %prep +</I>><i> >> %setup -q +</I>><i> >> # fix encoding of flopen.3 man page +</I>><i> >> for f in src/flopen.3; do +</I>><i> >> iconv -f iso8859-1 -t utf-8 $f >$f.conv +</I>><i> >> touch -r $f $f.conv +</I>><i> >> mv $f.conv $f +</I>><i> >> done +</I>><i> >> +</I>><i> >> %build +</I>><i> >> %make +</I>><i> > +</I>><i> > %optflags not used. +</I>><i> > +</I>><i> >> %install +</I>><i> >> make install DESTDIR=%{buildroot} \ +</I>><i> > +</I>><i> > %makeinstall_std +</I>><i> +</I>><i> Here you really need to spefify them, with %makeinstall_std fails +</I>><i> +</I>><i> >> libdir=%{_libdir} \ +</I>><i> >> usrlibdir=%{_libdir} \ +</I>><i> >> exec_prefix=%{_prefix} +</I>><i> > +</I>><i> > [...] +</I>><i> > +</I>><i> >> optidesk.spec +</I>><i> >> +</I>><i> >> +</I>><i> >> Name: optidesk +</I>><i> >> Summary: Tool to configure .desktop files to run with optirun +</I>><i> >> Group: Graphical desktop/Other +</I>><i> >> Version: 0.1 +</I>><i> >> Release: 1 +</I>><i> >> URL: <A HREF="https://github.com/Bumblebee-Project/optidesk">https://github.com/Bumblebee-Project/optidesk</A> +</I>><i> >> License: GPLv3 +</I>><i> >> # source from git repo <A HREF="git://github.com/Bumblebee-Project/optidesk.git">git://github.com/Bumblebee-Project/optidesk.git</A> +</I>><i> >> Source0: %{name}.tar.xz +</I>><i> > +</I>><i> > Tarball needs to be versioned. +</I>><i> +</I>><i> I did add a comment saying its from git, but i usually use to create a +</I>><i> macro and put some like this: +</I>><i> +</I>><i> Source0: %{?git:%{name}}%{!?git:%{name}-%{version}}.tar.xz +</I>><i> +</I>><i> but still there isnt any version released +</I>><i> +</I>><i> >> Requires: bumblebee +</I>><i> >> +</I>><i> >> %description +</I>><i> >> This tool is intended to be an easy way of configuring your desired +</I>><i> >> applications to be run through Bumblebee. It will allow to create +</I>><i> >> and modify a menu entry with an alternative (Optirun) version of the +</I>><i> >> default launcher. +</I>><i> >> +</I>><i> >> %files +</I>><i> >> %{_bindir}/%{name} +</I>><i> >> +</I>><i> >> +</I>><i> >> %prep +</I>><i> >> %setup -qn %{name} +</I>><i> >> +</I>><i> >> %build +</I>><i> >> autoreconf -fi +</I>><i> >> %configure +</I>><i> > +</I>><i> > %configure2_5x +</I>><i> +</I>><i> I also use to use configure2_5X~but here would not make any +</I>><i> difference, but yes here i didnt put because i missed ateention on +</I>><i> this line +</I>><i> +</I>><i> >> %make +</I>><i> > +</I>><i> > [...] +</I>><i> > +</I>><i> >> %changelog +</I>><i> >> * Mon Mar 19 2012 Simple <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmailcom</A>> 3.0-1 +</I>><i> >> - initial package +</I>><i> > +</I>><i> > No single-entry changelog needed for imported packages, it will be +</I>><i> > created from the import commit message. (applies to all .specs) +</I>><i> +</I>><i> Even so i do add an entry in changelog for my personall reports. +</I>><i> +</I>><i> >> dkms-bbswitch.spec +</I>><i> >> +</I>><i> >> +</I>><i> >> %define oname bbswitch +</I>><i> >> +</I>><i> >> Name: dkms-%{oname} +</I>><i> >> Summary: bbswitch - Optimus GPU power switcher +</I>><i> >> Group: System/Kernel and hardware +</I>><i> >> Version: 0.4.1 +</I>><i> >> Release: %mkrel 1 +</I>><i> >> License: GPLv3 +</I>><i> >> URL: <A HREF="https://github.com/Bumblebee-Project/bbswitch">https://github.com/Bumblebee-Project/bbswitch</A> +</I>><i> >> # source from git repo <A HREF="git://github.com/Bumblebee-Project/bbswitch.git">git://github.com/Bumblebee-Project/bbswitch.git</A> +</I>><i> >> Source0: %{oname}.tar.xz +</I>><i> > +</I>><i> > Tarball needs to be versioned. +</I>><i> +</I>><i> This is from git and already explained that there was no release +</I> +i like to add that if it's a git version, it's best if to have some kind of +git version on it. so it can be uniquely named. same git version should also +be used in the version or release. + +><i> >> BuildArch: noarch +</I>><i> >> Requires(post): dkms +</I>><i> >> Requires(preun):dkms +</I>><i> > +</I>><i> > Needs to require dkms. +</I>><i> +</I>><i> AFAIK dkms its only used in post and preun scriptlets., so why add +</I>><i> another plain require? +</I> +it's in the policy, if you think the policy is incorrect, you should send a +separate email about it. + +better to follow the policy. + +><i> >> %description +</I>><i> >> bbswitch is a kernel module which automatically detects the required +</I>><i> >> ACPI calls for two kinds of Optimus laptops. It has been verified to +</I>><i> >> work with "real" Optimus and "legacy" Optimus laptops (at least, that +</I>><i> >> is how I call them). +</I>><i> >> +</I>><i> >> %files +</I>><i> >> %{_usrsrc}/%{oname}-%{version}/* +</I>><i> >> +</I>><i> >> %post +</I>><i> >> set -x +</I>><i> >> dkms add -m %{oname} -v %{version} --rpm_safe_upgrade || : +</I>><i> >> dkms build -m %{oname} -v %{version} --rpm_safe_upgrade || : +</I>><i> >> dkms install -m %{oname} -v %{version} --rpm_safe_upgrade || : +</I>><i> >> /sbin/modprobe %{oname} || : +</I>><i> >> +</I>><i> >> %preun +</I>><i> >> dkms remove --binary -m %{oname} -v %{version} --rpm_safe_upgrade --all +</I>><i> >> || : +</I>><i> > +</I>><i> >> /sbin/rmmod %{oname} || : +</I>><i> > These scripts are a bit incorrect, see +</I>><i> > <A HREF="https://wiki.mageia.org/en/DKMS_packaging_policy">https://wiki.mageia.org/en/DKMS_packaging_policy</A> +</I>><i> > (some || : should be replaced with &&) +</I>><i> +</I>><i> Well i dont think its incorrect, bow if mageia prefers to use another +</I>><i> code its a different issue. +</I>><i> +</I>><i> >> %prep +</I>><i> >> %setup -qn %{oname} +</I>><i> >> sed -i 's/#MODULE_VERSION#/%{version}/g' dkms/dkms.conf +</I>><i> >> +</I>><i> >> %install +</I>><i> >> rm -rf %{buildroot} +</I>><i> >> mkdir -p %{buildroot}%{_usrsrc}/%{oname}-%{version} +</I>><i> >> cp *.c %{buildroot}%{_usrsrc}/%{oname}-%{version} +</I>><i> >> cp Makefile %{buildroot}%{_usrsrc}/%{oname}-%{version} +</I>><i> >> cp dkms/dkms.conf %{buildroot}%{_usrsrc}/%{oname}-%{version}/dkms.conf +</I>><i> >> +</I>><i> >> %changelog +</I>><i> >> * Mon Mar 19 2012 Simple <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>> 0.4.1-1 +</I>><i> >> - initial package +</I>><i> >> +</I>><i> >> +</I>><i> >> bumblebee.spec +</I>><i> >> +</I>><i> >> +</I>><i> >> Name: bumblebee +</I>><i> >> Summary: Bumblebee - support for NVidia Optimus laptops on Linux! +</I>><i> >> Group: System/Kernel and hardware +</I>><i> >> Version: 3.0 +</I>><i> >> Release: 1 +</I>><i> > +</I>><i> > Missing %mkrel. +</I>><i> +</I>><i> Yes its a typo that escaped me. +</I>><i> +</I>><i> >> URL: <A HREF="https://github.com/Bumblebee-Project/bumblebee">https://github.com/Bumblebee-Project/bumblebee</A> +</I>><i> >> License: GPLv3 +</I>><i> > +</I>><i> > Incorrect license, see license policy: +</I>><i> > <A HREF="https://wiki.mageia.org/en/Licensing_policy">https://wiki.mageia.org/en/Licensing_policy</A> +</I>><i> > +</I>><i> > AFAICS should be GPLv3+. I didn't check other packages, they may have +</I>><i> > wrong tags as well. +</I>><i> +</I>><i> I need to read it, i didnt knew about it. +</I>><i> +</I>><i> >> # source from git repo <A HREF="git://github.com/Bumblebee-Project/Bumblebee.git">git://github.com/Bumblebee-Project/Bumblebee.git</A> +</I>><i> >> Source0: Bumblebee.tar.xz +</I>><i> > +</I>><i> > Needs to be versioned. +</I>><i> > +</I>><i> >> BuildRequires: X11-devel +</I>><i> >> BuildRequires: pkgconfig(glib-2.0) +</I>><i> >> BuildRequires: pkgconfig(libbsd) +</I>><i> >> BuildRequires: help2man +</I>><i> >> Requires(pre): update-alternatives +</I>><i> >> Requires(post): systemd-units +</I>><i> >> Requires(preun):systemd-units +</I>><i> >> Requires(postun):systemd-units +</I>><i> >> Requires: virtualgl +</I>><i> >> Requires: x11-driver-video-nvidia-current +</I>><i> > +</I>><i> > I thought this worked with nouveau as well? +</I>><i> +</I>><i> Well so far the tests i performed always missed with noveau when +</I>><i> running optirun, Anyway, bumblebee is configured by default to use +</I>><i> nvidia driver. +</I>><i> +</I>><i> >> Requires: dkms-bbswitch +</I>><i> >> Requires: dkms-acpi_call +</I>><i> > +</I>><i> > Packages can't require dkms packages directly, see the aforementioned +</I>><i> > DKMS policy (use kmod() instead). Requiring them directly breaks binary +</I>><i> > dkms packages. +</I>><i> +</I>><i> This one i didnt knew :) +</I> +you can afterwards make a kmod-bbswitch and kmod-acpi_call packages that make +prebuilt modules for all available kernels. + +><i> >> %description +</I>><i> >> Bumblebee daemon is a rewrite of the original Bumblebee service, +</I>><i> >> providing an elegant and stable means of managing Optimus hybrid +</I>><i> >> graphics chipsets. +</I>><i> >> A primary goal of this project is to not only enable use of the +</I>><i> >> discrete GPU for rendering, but also to enable smart power management +</I>><i> >> of the dGPU when it's not in use. +</I>><i> >> +</I>><i> >> %prep +</I>><i> >> %setup -qn Bumblebee +</I>><i> >> +</I>><i> >> %build +</I>><i> >> autoreconf -fi +</I>><i> >> %configure \ +</I>><i> >> CONF_DRIVER=nvidia \ +</I>><i> >> CONF_DRIVER_MODULE_NVIDIA=nvidia-current \ +</I>><i> >> CONF_LDPATH_NVIDIA=/usr/lib/nvidia-current:/usr/lib64/nvidia-current \ +</I>><i> >> CONF_MODPATH_NVIDIA=/usr/lib/nvidia-current/xorg,/usr/lib64/nvidia-curre +</I>><i> >> nt/xorg,/usr/lib/xorg/modules,/usr/lib64/xorg/modules,/usr/lib/xorg/extr +</I>><i> >> a-modules,/usr/lib64/xorg/extra-modules +</I>><i> > +</I>><i> > Use %{_libdir}, %ifarch and %{_prefix}/lib. 32-bit builds need only +</I>><i> > %{_libdir}, 64-bit builds (%ifarch x86_64) need both %{_libdir} and +</I>><i> > %{_prefix}/lib. +</I>><i> > +</I>><i> >> %make +</I>><i> >> +</I>><i> >> %install +</I>><i> >> rm -rf %{buildroot} +</I>><i> >> %makeinstall_std +</I>><i> >> +</I>><i> >> install -m644 -D scripts/systemd/bumblebeed.service +</I>><i> >> %{buildroot}%{_sysconfdir}/systemd/system/bumblebeed.service install +</I>><i> >> -m644 -D scripts/sysvinit/bumblebeed +</I>><i> >> %{buildroot}%{_initrddir}/%{name}/bumblebeed +</I>><i> >> +</I>><i> >> %files +</I>><i> >> %doc README.markdown doc/RELEASE_NOTES_3_0 +</I>><i> >> %config(noreplace) %{_sysconfdir}/bash_completion.d/bumblebee +</I>><i> > +</I>><i> > This shouldn't be %config. +</I>><i> > +</I>><i> >> %dir %{_sysconfdir}/bumblebee/ +</I>><i> >> %config(noreplace) %{_sysconfdir}/bumblebee/bumblebee.conf +</I>><i> >> %config(noreplace) %{_sysconfdir}/bumblebee/xorg.conf.nouveau +</I>><i> >> %config(noreplace) %{_sysconfdir}/bumblebee/xorg.conf.nvidia +</I>><i> >> %{_sysconfdir}/systemd/system/bumblebeed.service +</I>><i> >> %{_initrddir}/%{name}/ +</I>><i> > +</I>><i> > Extra '/'? +</I>><i> +</I>><i> This one was a typo. +</I>><i> +</I>><i> >> %{_sbindir}/bumblebeed +</I>><i> >> %{_bindir}/optirun +</I>><i> >> %{_bindir}/bumblebee-bugreport +</I>><i> >> %{_mandir}/man1/bumblebeed.1* +</I>><i> >> %{_mandir}/man1/optirun.1* +</I>><i> >> +</I>><i> >> %pre +</I>><i> >> %_pre_groupadd %{name} +</I>><i> >> if [ "$1" -eq "1" ];then +</I>><i> >> /usr/sbin/update-alternatives --set gl_conf +</I>><i> >> %{_sysconfdir}/ld.so.conf.d/GL/standard.conf fi +</I>><i> > +</I>><i> > Forcibly changing configuration in %pre seems quite bad to me, though I +</I>><i> > do not see much better solutions (except making XFdrake aware of +</I>><i> > bumblebee, which is quite some work). +</I>><i> +</I>><i> I did asked you about what would be the best option here and you said +</I>><i> that --set would be the best choice. +</I>><i> +</I>><i> >> %post +</I>><i> >> %_post_service bumblebeed +</I>><i> > +</I>><i> > [...] +</I>><i> > +</I>><i> >> if [ $1 -eq 1 ]; then +</I>><i> >> # Initial set +</I>><i> >> # Enable (but don't start) the unit by default +</I>><i> >> /bin/systemctl enable bumblebeed.service +</I>><i> >> fi +</I>><i> > +</I>><i> > I don't think this stuff is needed on Mageia, that is done by default. +</I>><i> +</I>><i> Really? I didnt knew about it, is there any page documenting that? +</I>><i> Im quite curious about how is done :) +</I> +perhaps filetriggers or the post and preun service helpers do all this +automagically... i don't know, i usually just look at other packages. + +i think a provided existing service file is picked up by filetriggers + +><i> >> %preun +</I>><i> >> %_preun_service bumblebeed +</I>><i> > +</I>><i> > [...] +</I>><i> > +</I>><i> >> if [ $1 -eq 0 ]; then +</I>><i> >> # Package removal, not upgrade +</I>><i> >> /bin/systemctl --no-reload disable bumblebeed.service +</I>><i> >> /bin/systemctl stop bumblebeed.service +</I>><i> >> fi +</I>><i> > +</I>><i> > That is done by %_preun_service already. +</I>><i> +</I>><i> How come? +</I>><i> ~]$ rpm -E %_preun_service +</I>><i> /usr/share/rpm-helper/del-service %{name} $1 +</I>><i> +</I>><i> >> %postun +</I>><i> >> %_postun_groupdel %{name} +</I>><i> >> +</I>><i> >> /bin/systemctl daemon-reload +</I>><i> > +</I>><i> > Already done by filetriggers. +</I>><i> > +</I>><i> >> if [ $1 -ge 1 ]; then +</I>><i> >> # Package upgrade, not uninstall +</I>><i> >> /bin/systemctl try-restart bumblebeed.service +</I>><i> >> fi +</I>><i> > +</I>><i> > Already done by %_post_service. +</I>><i> +</I>><i> I dont get why you said that again when: +</I>><i> +</I>><i> ]$ rpm -E %_post_service +</I>><i> /usr/share/rpm-helper/add-service %{name} $1 +</I>><i> +</I>><i> >> %changelog +</I>><i> >> * Mon Mar 19 2012 Simple <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmailcom</A>> 3.0-1 +</I>><i> >> - 3.0 (from git), initial package +</I>><i> >> +</I>><i> >> +</I>><i> >> bumblebee-ui.spec +</I>><i> >> +</I>><i> >> +</I>><i> >> Name: bumblebee-ui +</I>><i> >> Summary: Bumblebee User Interface +</I>><i> >> Group: System/Configuration/Other +</I>><i> >> Version: 1.0 +</I>><i> >> Release: %mkrel 1 +</I>><i> >> URL: <A HREF="https://github.com/Bumblebee-Project/bumblebee-ui">https://github.com/Bumblebee-Project/bumblebee-ui</A> +</I>><i> >> License: GPLv3 +</I>><i> >> # source from git repo +</I>><i> >> <A HREF="git://github.com/Bumblebee-Project/bumblebee-ui.git">git://github.com/Bumblebee-Project/bumblebee-ui.git</A> Source0: +</I>><i> >> %{name}.tar.xz +</I>><i> > +</I>><i> > Needs to be versioned. +</I>><i> > +</I>><i> >> BuildArch: noarch +</I>><i> >> Requires: bumblebee +</I>><i> >> +</I>><i> >> %description +</I>><i> >> This is a user interface for bumblebee. +</I>><i> >> A complete explanation of the feature of this user interface are +</I>><i> >> explained here : +</I>><i> >> <A HREF="https://github.com/Bumblebee-Project/bumblebee-ui/wiki">https://github.com/Bumblebee-Project/bumblebee-ui/wiki</A> +</I>><i> >> Please give it a try and report bugs to: +</I>><i> >> <A HREF="https://github.com/Bumblebee-Project/bumblebee-ui/issues">https://github.com/Bumblebee-Project/bumblebee-ui/issues</A> +</I>><i> > +</I>><i> > "Please give it a try" is inappropriate in a %description. This should +</I>><i> > also briefly explain what bumblebee is. +</I>><i> +</I>><i> I just copied whats in the bumblebee page +</I>><i> +</I>><i> >> %files +</I>><i> >> %{_sysconfdir}/xdg/autostart/bumblebee-indicator.desktop +</I>><i> >> %{_bindir}/bumblebee* +</I>><i> >> %{_datadir}/%{name}/ +</I>><i> >> %{_datadir}/applications/* +</I>><i> >> %{_iconsdir}/hicolor/* +</I>><i> >> +</I>><i> >> %prep +</I>><i> >> %setup -qn %{name} +</I>><i> >> +</I>><i> >> %install +</I>><i> >> rm -rf %{buildroot} +</I>><i> >> mkdir -p %{buildroot}%{_iconsdir}/hicolor/48x48/apps/ +</I>><i> >> cp icons/*.* %{buildroot}%{_iconsdir}/hicolor/48x48/apps/ +</I>><i> >> mkdir -p %{buildroot}%{_datadir}/{%{name},applications} +</I>><i> >> cp app/*.* %{buildroot}%{_datadir}/%{name} +</I>><i> >> cp bumblebee-app-settings.desktop %{buildroot}%{_datadir}/applications/ +</I>><i> >> cp bumblebee-indicator.desktop %{buildroot}%{_datadir}/applications/ +</I>><i> >> mkdir -p %{buildroot}%{_bindir} +</I>><i> >> ln -s %{_datadir}/%{name}/AppSettings.py +</I>><i> >> %{buildroot}%{_bindir}/bumblebee-app-settings ln -s +</I>><i> >> %{_datadir}/%{name}/Bumblebee-Indicator.py +</I>><i> >> %{buildroot}%{_bindir}/bumblebee-indicator +</I>><i> >> +</I>><i> >> chmod +x +</I>><i> >> %{buildroot}%{_datadir}/applications/bumblebee-app-settings.desktop +</I>><i> >> chmod +x +</I>><i> >> %{buildroot}%{_datadir}/applications/bumblebee-indicator.desktop chmod +</I>><i> >> +x -R %{buildroot}%{_datadir}/%{name} +</I>><i> >> +</I>><i> >> # Always start in boot +</I>><i> >> mkdir -p %{buildroot}%{_sysconfdir}/xdg/autostart +</I>><i> >> cp bumblebee-indicator.desktop %{buildroot}%{_sysconfdir}/xdg/autostart +</I>><i> >> +</I>><i> >> +</I>><i> >> %changelog +</I>><i> >> * Mon Mar 19 2012 Simple <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>> 1.0-1 +</I>><i> >> - initial package +</I>><i> >> +</I>><i> >> +</I>><i> >> dkms-acpi_call.spec +</I>><i> >> +</I>><i> >> +</I>><i> >> %define modname acpi_call +</I>><i> >> +</I>><i> >> Name: dkms-%{modname} +</I>><i> >> Summary: A kernel module that enables you to call ACPI methods +</I>><i> >> Group: System/Kernel and hardware +</I>><i> >> Version: 0.1 +</I>><i> >> Release: %mkrel 1 +</I>><i> >> URL: <A HREF="https://github.com/Bumblebee-Project/acpi_call">https://github.com/Bumblebee-Project/acpi_call</A> +</I>><i> >> License: GPL +</I>><i> >> # source from git repo <A HREF="git://github.com/Bumblebee-Project/acpi_call.git">git://github.com/Bumblebee-Project/acpi_call.git</A> +</I>><i> >> Source0: %{modname}.tar.xz +</I>><i> > +</I>><i> > Needs to be versioned. +</I>><i> > +</I>><i> >> BuildArch: noarch +</I>><i> >> Requires(post): dkms +</I>><i> >> Requires(preun):dkms +</I>><i> > +</I>><i> > Needs to require dkms. +</I>><i> +</I>><i> Again i dont get why when dkms is only used in post/preun scripts +</I>><i> +</I>><i> >> %description +</I>><i> >> A kernel module that enables you to call ACPI methods by writing the +</I>><i> >> method name followed by arguments to /proc/acpi/call. +</I>><i> >> +</I>><i> >> %files +</I>><i> >> %doc README +</I>><i> >> %{_usrsrc}/%{modname}-%{version}-%{release}/* +</I>><i> >> +</I>><i> >> %post +</I>><i> >> set -x +</I>><i> >> /usr/sbin/dkms add -m %{modname} -v %{version}-%{release} +</I>><i> >> --rpm_safe_upgrade || : /usr/sbin/dkms build -m %{modname} -v +</I>><i> >> %{version}-%{release} --rpm_safe_upgrade || : /usr/sbin/dkms install -m +</I>><i> >> %{modname} -v %{version}-%{release} --rpm_safe_upgrade || : +</I>><i> > +</I>><i> >> /sbin/modprobe %{modname} || : +</I>><i> > Same comments as for the previous dkms package, see mentioned policy. +</I>><i> > +</I>><i> >> %preun +</I>><i> >> dkms remove --binary -m %{modname} -v %{version}-%{release} +</I>><i> >> --rpm_safe_upgrade --all || : /sbin/rmmod %{modname} || : +</I>><i> >> +</I>><i> >> %prep +</I>><i> >> %setup -qn %{modname} +</I>><i> >> +</I>><i> >> %install +</I>><i> >> rm -rf %{buildroot} +</I>><i> >> +</I>><i> >> mkdir -p -m755 %{buildroot}%{_usrsrc}/%{modname}-%{version}-%{release} +</I>><i> >> cp -a * %{buildroot}%{_usrsrc}/%{modname}-%{version}-%{release} +</I>><i> >> # DKMS config +</I>><i> >> cat > %{buildroot}%{_usrsrc}/%{modname}-%{version}-%{release}/dkms.conf +</I>><i> >> << 'EOF' PACKAGE_NAME="%{modname}" +</I>><i> >> PACKAGE_VERSION="%{version}-%{release}" +</I>><i> >> MAKE[0]="make default KERNELPATH=${kernel_source_dir}" +</I>><i> >> +</I>><i> >> MAKE_MATCH[0]="make load KERNELPATH=${kernel_source_dir}" +</I>><i> > +</I>><i> > MAKE_MATCH[#] is a regular expression field, you have something very +</I>><i> > different in there. MAKE_MATCH[#] line is unneeded here. +</I>><i> +</I>><i> That line shouldnt be there, seams i didnt attach the most updated spec... +</I>><i> +</I>><i> >> BUILT_MODULE_NAME[0]="%{modname}" +</I>><i> >> DEST_MODULE_LOCATION[0]="/kernel/drivers/acpi" +</I>><i> >> REMAKE_INITRD="no" +</I>><i> >> AUTOINSTALL="yes" +</I>><i> >> EOF +</I>><i> >> +</I>><i> >> %changelog +</I>><i> >> * Mon Mar 19 2012 Simple <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmailcom</A>> 1.0-1 +</I>><i> >> - initial package +</I>><i> >> +</I>><i> >> +</I>><i> >> libindicator.spec +</I>><i> >> +</I>><i> >> +</I>><i> >> %define major 7 +</I>><i> >> %define libtool %mklibname indicator3 +</I>><i> >> %define libname %mklibname indicator3_ %{major} +</I>><i> >> %define libdevel %mklibname indicator3 -d +</I>><i> >> +</I>><i> >> Name: libindicator +</I>><i> >> Summary: A set of symbols and convience functions for indicators +</I>><i> >> Group: System/Libraries +</I>><i> >> Version: 0.4.93 +</I>><i> >> Release: %mkrel 1 +</I>><i> >> License: GPL-3.0 +</I>><i> > +</I>><i> > Incorrect license tag. +</I>><i> > +</I>><i> >> URL: <A HREF="http://launchpad.net/libindicator">http://launchpad.net/libindicator</A> +</I>><i> >> Source0: +</I>><i> >> <A HREF="http://launchpad.net/libindicator/0.5/0.4.93/+download//%{name">http://launchpad.net/libindicator/0.5/0.4.93/+download//%{name</A>}-%{vers +</I>><i> >> ion}.tar.gz BuildRequires: pkgconfig(gtk+-3.0) +</I>><i> >> +</I>><i> >> %description +</I>><i> >> A set of symbols and convience functions that all indicators would like +</I>><i> >> to use. Not of real use outside of the Ayatana indicators project. +</I>><i> >> +</I>><i> >> #-------------------------------------------------------------------- +</I>><i> >> %package -n %{libname} +</I>><i> >> Summary: libindicator3 library +</I>><i> >> Group: System/Libraries +</I>><i> >> +</I>><i> >> %description -n %{libname} +</I>><i> >> Library for libindicator3. +</I>><i> >> +</I>><i> >> %files -n %{libname} +</I>><i> >> %{_libdir}/libindicator3.so.%{major}* +</I>><i> >> +</I>><i> >> #-------------------------------------------------------------------- +</I>><i> >> %package -n %{libtool}-tools +</I>><i> >> Summary: libindicator3 tool +</I>><i> >> Group: System/Libraries +</I>><i> >> +</I>><i> >> %description -n %{libtool}-tools +</I>><i> >> Tool to load libindicator3 plugins. +</I>><i> >> +</I>><i> >> %files -n %{libtool}-tools +</I>><i> >> %{_libdir}/indicator-loader3 +</I>><i> >> %{_libdir}/libdummy-indicator-blank.so +</I>><i> >> %{_libdir}/libdummy-indicator-entry-func.so +</I>><i> >> %{_libdir}/libdummy-indicator-null.so +</I>><i> >> %{_libdir}/libdummy-indicator-signaler.so +</I>><i> >> %{_libdir}/libdummy-indicator-simple.so +</I>><i> >> %{_libdir}/libdummy-indicator-visible.so +</I>><i> >> +</I>><i> >> #-------------------------------------------------------------------- +</I>><i> >> %package -n %{libdevel} +</I>><i> >> Summary: libindicator3 development files +</I>><i> >> Group: Development/GNOME and GTK+ +</I>><i> >> Requires: %{libname} >= %{version} +</I>><i> > +</I>><i> > Shouldn't this be "="? +</I>><i> +</I>><i> I think >= is better than just = +</I> +i think we all use = for such a case, better to follow conventions on this. at +least it would enforce the same version, (i also use mostly = +%{version}-%{release} ) + +if using this to build something it would theoretically allow disjoint +versions of both lib and devel to be used for building a dependant app? +(unsure) + +in any case, better safe than sorry. + +><i> >> %description -n %{libdevel} +</I>><i> >> Development files needed by libindicator3. +</I>><i> >> +</I>><i> >> %files -n %{libdevel} +</I>><i> >> %doc AUTHORS ChangeLog COPYING INSTALL +</I>><i> >> %{_includedir}/libindicator3-0.4/libindicator/ +</I>><i> >> %{_libdir}/libindicator3.so +</I>><i> >> %{_libdir}/pkgconfig/indicator3-0.4.pc +</I>><i> >> %{_datadir}/libindicator/80indicator-debugging +</I>><i> >> +</I>><i> >> #-------------------------------------------------------------------- +</I>><i> >> %prep +</I>><i> >> %setup -q +</I>><i> >> +</I>><i> >> %build +</I>><i> >> %configure \ +</I>><i> >> --disable-static +</I>><i> >> %make +</I>><i> >> +</I>><i> >> %install +</I>><i> >> %makeinstall_std +</I>><i> >> +</I>><i> >> # Clean .la files +</I>><i> >> find %{buildroot}%{_libdir} -name '*.la' -delete -print +</I>><i> >> +</I>><i> >> +</I>><i> >> %changelog +</I>><i> >> * Sun Mar 18 2012 Simple <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>> 0.4.93-1 +</I>><i> >> - first package +</I>><i> >> +</I>><i> >> +</I>><i> >> virtualgl.spec +</I>><i> >> +</I>><i> >> +</I>><i> >> %define oname VirtualGL +</I>><i> >> %define libname %mklibname %{name} +</I>><i> >> +</I>><i> >> Name: virtualgl +</I>><i> >> Summary: A toolkit for displaying OpenGL applications to thin +</I>><i> >> clients Group: Networking/Other +</I>><i> >> Version: 2.3 +</I>><i> >> Release: %mkrel 1 +</I>><i> >> URL: <A HREF="http://www.virtualgl.org">http://www.virtualgl.org</A> +</I>><i> >> License: wxWindows Library License v3.1 +</I>><i> > +</I>><i> > Incorrect tag, see license policy as mentioned previously. +</I>><i> > +</I>><i> >> Source0: +</I>><i> >> <A HREF="http://prdownloads.sourceforge.net/virtualgl/%{oname">http://prdownloads.sourceforge.net/virtualgl/%{oname</A>}-%{version}.tar.g +</I>><i> >> z Patch0: vgl_2.3_patch0 +</I>><i> > +</I>><i> > Please name this properly, and with a .patch extension. +</I>><i> +</I>><i> Again a typo... +</I>><i> +</I>><i> >> BuildRequires: X11-devel +</I>><i> >> BuildRequires: jpeg-devel +</I>><i> >> BuildRequires: cmake +</I>><i> >> +</I>><i> >> +</I>><i> >> %description +</I>><i> >> VirtualGL is a library which allows most Linux OpenGL applications to be +</I>><i> >> remotely displayed to a thin client without the need to alter the +</I>><i> >> applications in any way. VGL inserts itself into an application at run +</I>><i> >> time and intercepts a handful of GLX calls, which it reroutes to the +</I>><i> >> server's display (which presumably has a 3D accelerator attached.) +</I>><i> >> This causes all 3D rendering to occur on the server's display. As +</I>><i> >> each frame is rendered by the server, VirtualGL reads back the pixels +</I>><i> >> from the server's framebuffer and sends them to the client for +</I>><i> >> re-compositing into the appropriate X Window. VirtualGL can be used to +</I>><i> >> give hardware-accelerated 3D capabilities to VNC or other remote +</I>><i> >> display environments that lack GLX support. In a LAN environment, it +</I>><i> >> can also be used with its built-in motion-JPEG video delivery system to +</I>><i> >> remotely display full-screen 3D applications at 20+ frames/second. +</I>><i> >> +</I>><i> >> VirtualGL is based upon ideas presented in various academic papers on +</I>><i> >> this topic, including "A Generic Solution for Hardware-Accelerated +</I>><i> >> Remote Visualization" (Stegmaier, Magallon, Ertl 2002) and "A Framework +</I>><i> >> for Interactive Hardware Accelerated Remote 3D-Visualization" (Engel, +</I>><i> >> Sommer, Ertl 2000.) +</I>><i> >> +</I>><i> >> %files +</I>><i> >> %{_bindir}/* +</I>><i> >> %{_defaultdocdir}/%{name}/ +</I>><i> > +</I>><i> > Mark docs as %doc. +</I>><i> +</I>><i> Correct, that also missed my attention. +</I>><i> +</I>><i> >> #-------------------------------------------------------------------- +</I>><i> >> %package -n %libname +</I>><i> >> Summary: Libraries injected by VirtualGL into applications that are ran +</I>><i> >> through it Group: System/Libraries +</I>><i> >> +</I>><i> >> %description -n %libname +</I>><i> >> Libraries injected by VirtualGL into applications that are ran throught +</I>><i> >> it. Lib package allow installing 32 and 64 bits libraries at the same +</I>><i> >> time. +</I>><i> >> +</I>><i> >> %files -n %libname +</I>><i> >> %dir %{_libdir}/fakelib/ +</I>><i> >> %{_libdir}/fakelib/libGL.so +</I>><i> >> %{_libdir}/librrfaker.so +</I>><i> >> %{_libdir}/libdlfaker.so +</I>><i> >> %{_libdir}/libgefaker.so +</I>><i> > +</I>><i> > This will need %_provides_exceptions or %_exclude_files_from_autoprov so +</I>><i> > that devel(GL) won't be provided. This would confuse the -devel +</I>><i> > dependencies of the distribution, and libvirtualgl could sometimes be +</I>><i> > installed when libmesagl-devel is intended. +</I>><i> > +</I>><i> >> #-------------------------------------------------------------------- +</I>><i> >> %package devel +</I>><i> >> Summary: A toolkit for displaying OpenGL applications to thin +</I>><i> >> clients Group: Networking/Other +</I>><i> >> Requires: %{libname} >= %{version} +</I>><i> > +</I>><i> > Should be '=' AFAICS. +</I>><i> > +</I>><i> >> %description devel +</I>><i> >> VirtualGL is a library which allows most Linux OpenGL applications to be +</I>><i> >> remotely displayed to a thin client without the need to alter the +</I>><i> >> applications in any way. VGL inserts itself into an application at run +</I>><i> >> time and intercepts a handful of GLX calls, which it reroutes to the +</I>><i> >> server's display (which presumably has a 3D accelerator attached). This +</I>><i> >> causes all 3D rendering to occur on the server's display. As each frame +</I>><i> >> is rendered by the server, VirtualGL reads back the pixels from the +</I>><i> >> server's framebuffer and sends them to the client for re-compositing +</I>><i> >> into the appropriate X Window. VirtualGL can be used to give hardware- +</I>><i> >> -accelerated 3D capabilities to VNC or other remote display +</I>><i> >> environments that lack GLX support. In a LAN environment, it can also +</I>><i> >> be used with its built-in motion-JPEG video delivery system to remotely +</I>><i> >> display full-screen 3D applications at 20+ frames/second. +</I>><i> >> VirtualGL is based upon ideas presented in various academic papers on +</I>><i> >> this topic, including "A Generic Solution for Hardware-Accelerated +</I>><i> >> Remote Visualization" (Stegmaier, Magallon, Ertl 2002) and "A Framework +</I>><i> >> for Interactive Hardware Accelerated Remote 3D-Visualization" (Engel, +</I>><i> >> Sommer, Ertl 2000.) +</I>><i> >> +</I>><i> >> %files devel +</I>><i> >> %{_includedir}/rrtransport.h +</I>><i> >> %{_includedir}/rr.h +</I>><i> >> +</I>><i> >> #-------------------------------------------------------------------- +</I>><i> >> %prep +</I>><i> >> %setup -qn %{oname}-%{version} +</I>><i> >> %patch0 -p1 +</I>><i> >> +</I>><i> >> %build +</I>><i> >> cmake -G "Unix Makefiles" \ +</I>><i> >> -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \ +</I>><i> >> -DCMAKE_INSTALL_PREFIX=%{_prefix} \ +</I>><i> >> -DVGL_DOCDIR=%{_defaultdocdir}/%{name} \ +</I>><i> >> -DVGL_LIBDIR=%{_libdir} \ +</I>><i> >> -DTJPEG_INCLUDE_DIR=%{_includedir} \ +</I>><i> >> -DTJPEG_LIBRARY=%{_libdir}/libturbojpeg.so +</I>><i> > +</I>><i> > Should use %cmake. +</I>><i> +</I>><i> In this case that is not possible, i did tried %cmake but fails. +</I> +iinm you can also add extra option to %cmake. if it's possible it'd be nice to +have %cmake in it. if there would be systemwide changes at a later time, +possibly due to changed newer cmake behavior, or whatever, it can be picked up +without much effort. + +also it looks better to me, having all cmake packages using %cmake :-) + +><i> >> %make +</I>><i> >> +</I>><i> >> %install +</I>><i> >> rm -rf %{buildroot} +</I>><i> >> %makeinstall_std +</I>><i> >> +</I>><i> >> rm -rf %{buildroot}%{_prefix}/fakelib +</I>><i> >> mkdir -p %{buildroot}%{_libdir}/fakelib +</I>><i> >> ln -sf ../librrfaker.so %{buildroot}%{_libdir}/fakelib/libGL.so +</I>><i> >> mv -f %{buildroot}%{_bindir}/glxinfo %{buildroot}%{_bindir}/glxinfo2 +</I>><i> >> +</I>><i> >> +</I>><i> >> %changelog +</I>><i> >> * Mon Mar 19 2012 Simple <<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>> 2.3-1 +</I>><i> >> - first package +</I> +you likely know this, but for first import we keep older changelog, but in +general no %changelog is wanted. the commits used for the svn, will be used as +%changelog automatically, so having this here would give double changelog. + +><i> > -- +</I>><i> > Anssi Hannula +</I></PRE> + + + + + + + + + + + + + +<!--endarticle--> + <HR> + <P><UL> + <!--threads--> + <LI>Previous message: <A HREF="014104.html">[Mageia-dev] bumblebee in mageia (and mentoring) +</A></li> + <LI>Next message: <A HREF="014106.html">[Mageia-dev] bumblebee in mageia (and mentoring) +</A></li> + <LI> <B>Messages sorted by:</B> + <a href="date.html#14105">[ date ]</a> + <a href="thread.html#14105">[ thread ]</a> + <a href="subject.html#14105">[ subject ]</a> + <a href="author.html#14105">[ author ]</a> + </LI> + </UL> + +<hr> +<a href="https://www.mageia.org/mailman/listinfo/mageia-dev">More information about the Mageia-dev +mailing list</a><br> +</body></html> |