summaryrefslogtreecommitdiffstats
path: root/zarb-ml/mageia-dev/2012-April/014105.html
blob: 49ece54ec1bf8919d066f123e06ab792da18d824 (plain)
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
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:
&gt;<i> 2012/4/10 Anssi Hannula &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">anssi at mageia.org</A>&gt;:
</I>&gt;<i> &gt; 10.04.2012 07:46, simple w8 kirjoitti:
</I>&gt;<i> &gt;&gt; Currently i dont have any account to be able to comit these new
</I>&gt;<i> &gt;&gt; packages for the distro so i ask if someone can review the specs so
</I>&gt;<i> &gt;&gt; that these packages can start existing in the distro, and i also ask
</I>&gt;<i> &gt;&gt; if theres someone that can help me with mentoring
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Reviewed below. However, there looks to be quite a lot of work
</I>&gt;<i> &gt; remaining, so I don't think I'll be able to help you personally with the
</I>&gt;<i> &gt; issues. I hope you'll find a mentor who'll help you through.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; Name:         libbsd
</I>&gt;<i> &gt;&gt; Summary:      Library providing BSD-compatible functions for portability
</I>&gt;<i> &gt;&gt;
</I>&gt;<i> &gt;&gt;[...]
</I>&gt;<i> &gt;&gt;
</I>&gt;<i> &gt;&gt; %{_libdir}/libbsd.so.%{major}*
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; [...]
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %{_libdir}/libbsd.so
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; [...]
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; We already have libbsd.a from glibc-devel, which would conflict with
</I>&gt;<i> &gt; this. If they are really different libraries, something drastic would
</I>&gt;<i> &gt; have to be done (e.g. renaming or dropping one). I suspect they are the
</I>&gt;<i> &gt; same, though, in which case this isn't needed.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -q
</I>&gt;<i> &gt;&gt; # fix encoding of flopen.3 man page
</I>&gt;<i> &gt;&gt; for f in src/flopen.3; do
</I>&gt;<i> &gt;&gt;   iconv -f iso8859-1 -t utf-8 $f &gt;$f.conv
</I>&gt;<i> &gt;&gt;   touch -r $f $f.conv
</I>&gt;<i> &gt;&gt;   mv $f.conv $f
</I>&gt;<i> &gt;&gt; done
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %build
</I>&gt;<i> &gt;&gt; %make
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; %optflags not used.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %install
</I>&gt;<i> &gt;&gt; make install DESTDIR=%{buildroot} \
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; %makeinstall_std
</I>&gt;<i> 
</I>&gt;<i> Here you really need to spefify them, with %makeinstall_std  fails
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt;     libdir=%{_libdir} \
</I>&gt;<i> &gt;&gt;     usrlibdir=%{_libdir} \
</I>&gt;<i> &gt;&gt;     exec_prefix=%{_prefix}
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; [...]
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; optidesk.spec
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; Name:           optidesk
</I>&gt;<i> &gt;&gt; Summary:        Tool to configure .desktop files to run with optirun
</I>&gt;<i> &gt;&gt; Group:          Graphical desktop/Other
</I>&gt;<i> &gt;&gt; Version:        0.1
</I>&gt;<i> &gt;&gt; Release:        1
</I>&gt;<i> &gt;&gt; URL:            <A HREF="https://github.com/Bumblebee-Project/optidesk">https://github.com/Bumblebee-Project/optidesk</A>
</I>&gt;<i> &gt;&gt; License:        GPLv3
</I>&gt;<i> &gt;&gt; # source from git repo <A HREF="git://github.com/Bumblebee-Project/optidesk.git">git://github.com/Bumblebee-Project/optidesk.git</A>
</I>&gt;<i> &gt;&gt; Source0:      %{name}.tar.xz
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Tarball needs to be versioned.
</I>&gt;<i> 
</I>&gt;<i> I did add a comment saying its from git, but i usually use to create a
</I>&gt;<i> macro and put some like this:
</I>&gt;<i> 
</I>&gt;<i> Source0:      %{?git:%{name}}%{!?git:%{name}-%{version}}.tar.xz
</I>&gt;<i> 
</I>&gt;<i> but still there isnt any version released
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; Requires:     bumblebee
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %description
</I>&gt;<i> &gt;&gt; This tool is intended to be an easy way of configuring your desired
</I>&gt;<i> &gt;&gt; applications to be run through Bumblebee. It will allow to create
</I>&gt;<i> &gt;&gt; and modify a menu entry with an alternative (Optirun) version of the
</I>&gt;<i> &gt;&gt; default launcher.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files
</I>&gt;<i> &gt;&gt; %{_bindir}/%{name}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -qn %{name}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %build
</I>&gt;<i> &gt;&gt; autoreconf -fi
</I>&gt;<i> &gt;&gt; %configure
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; %configure2_5x
</I>&gt;<i> 
</I>&gt;<i> I also use to use configure2_5X~but here would not make any
</I>&gt;<i> difference, but yes here i didnt put because i missed ateention on
</I>&gt;<i> this line
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %make
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; [...]
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %changelog
</I>&gt;<i> &gt;&gt; * Mon Mar 19 2012 Simple &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmailcom</A>&gt; 3.0-1
</I>&gt;<i> &gt;&gt; - initial package
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; No single-entry changelog needed for imported packages, it will be
</I>&gt;<i> &gt; created from the import commit message. (applies to all .specs)
</I>&gt;<i> 
</I>&gt;<i> Even so i do add an entry in changelog for my personall reports.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; dkms-bbswitch.spec
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %define oname bbswitch
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; Name:           dkms-%{oname}
</I>&gt;<i> &gt;&gt; Summary:        bbswitch - Optimus GPU power switcher
</I>&gt;<i> &gt;&gt; Group:          System/Kernel and hardware
</I>&gt;<i> &gt;&gt; Version:        0.4.1
</I>&gt;<i> &gt;&gt; Release:        %mkrel 1
</I>&gt;<i> &gt;&gt; License:        GPLv3
</I>&gt;<i> &gt;&gt; URL:            <A HREF="https://github.com/Bumblebee-Project/bbswitch">https://github.com/Bumblebee-Project/bbswitch</A>
</I>&gt;<i> &gt;&gt; # source from git repo <A HREF="git://github.com/Bumblebee-Project/bbswitch.git">git://github.com/Bumblebee-Project/bbswitch.git</A>
</I>&gt;<i> &gt;&gt; Source0:        %{oname}.tar.xz
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Tarball needs to be versioned.
</I>&gt;<i> 
</I>&gt;<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.

&gt;<i> &gt;&gt; BuildArch:    noarch
</I>&gt;<i> &gt;&gt; Requires(post):       dkms
</I>&gt;<i> &gt;&gt; Requires(preun):dkms
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Needs to require dkms.
</I>&gt;<i> 
</I>&gt;<i> AFAIK dkms its only used in post and preun scriptlets., so why add
</I>&gt;<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.

&gt;<i> &gt;&gt; %description
</I>&gt;<i> &gt;&gt; bbswitch is a kernel module which automatically detects the required
</I>&gt;<i> &gt;&gt; ACPI calls for two kinds of Optimus laptops. It has been verified to
</I>&gt;<i> &gt;&gt; work with &quot;real&quot; Optimus and &quot;legacy&quot; Optimus laptops (at least, that
</I>&gt;<i> &gt;&gt; is how I call them).
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files
</I>&gt;<i> &gt;&gt; %{_usrsrc}/%{oname}-%{version}/*
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %post
</I>&gt;<i> &gt;&gt; set -x
</I>&gt;<i> &gt;&gt; dkms add -m %{oname} -v %{version} --rpm_safe_upgrade || :
</I>&gt;<i> &gt;&gt; dkms build -m %{oname} -v %{version} --rpm_safe_upgrade || :
</I>&gt;<i> &gt;&gt; dkms install -m %{oname} -v %{version} --rpm_safe_upgrade || :
</I>&gt;<i> &gt;&gt; /sbin/modprobe %{oname} || :
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %preun
</I>&gt;<i> &gt;&gt; dkms remove --binary -m %{oname} -v %{version} --rpm_safe_upgrade --all
</I>&gt;<i> &gt;&gt; || :
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; /sbin/rmmod %{oname} || :
</I>&gt;<i> &gt; These scripts are a bit incorrect, see
</I>&gt;<i> &gt; <A HREF="https://wiki.mageia.org/en/DKMS_packaging_policy">https://wiki.mageia.org/en/DKMS_packaging_policy</A>
</I>&gt;<i> &gt; (some || : should be replaced with &amp;&amp;)
</I>&gt;<i> 
</I>&gt;<i> Well i dont think its incorrect, bow if mageia prefers to use another
</I>&gt;<i> code its a different issue.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -qn %{oname}
</I>&gt;<i> &gt;&gt; sed -i 's/#MODULE_VERSION#/%{version}/g' dkms/dkms.conf
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %install
</I>&gt;<i> &gt;&gt; rm -rf %{buildroot}
</I>&gt;<i> &gt;&gt; mkdir -p %{buildroot}%{_usrsrc}/%{oname}-%{version}
</I>&gt;<i> &gt;&gt; cp *.c %{buildroot}%{_usrsrc}/%{oname}-%{version}
</I>&gt;<i> &gt;&gt; cp Makefile %{buildroot}%{_usrsrc}/%{oname}-%{version}
</I>&gt;<i> &gt;&gt; cp dkms/dkms.conf %{buildroot}%{_usrsrc}/%{oname}-%{version}/dkms.conf
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %changelog
</I>&gt;<i> &gt;&gt; * Mon Mar 19 2012 Simple &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>&gt; 0.4.1-1
</I>&gt;<i> &gt;&gt; - initial package
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; bumblebee.spec
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; Name:           bumblebee
</I>&gt;<i> &gt;&gt; Summary:        Bumblebee - support for NVidia Optimus laptops on Linux!
</I>&gt;<i> &gt;&gt; Group:          System/Kernel and hardware
</I>&gt;<i> &gt;&gt; Version:        3.0
</I>&gt;<i> &gt;&gt; Release:        1
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Missing %mkrel.
</I>&gt;<i> 
</I>&gt;<i> Yes its a typo that escaped me.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; URL:            <A HREF="https://github.com/Bumblebee-Project/bumblebee">https://github.com/Bumblebee-Project/bumblebee</A>
</I>&gt;<i> &gt;&gt; License:        GPLv3
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Incorrect license, see license policy:
</I>&gt;<i> &gt; <A HREF="https://wiki.mageia.org/en/Licensing_policy">https://wiki.mageia.org/en/Licensing_policy</A>
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; AFAICS should be GPLv3+. I didn't check other packages, they may have
</I>&gt;<i> &gt; wrong tags as well.
</I>&gt;<i> 
</I>&gt;<i> I need to read it, i didnt knew about it.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; # source from git repo <A HREF="git://github.com/Bumblebee-Project/Bumblebee.git">git://github.com/Bumblebee-Project/Bumblebee.git</A>
</I>&gt;<i> &gt;&gt; Source0:      Bumblebee.tar.xz
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Needs to be versioned.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; BuildRequires:        X11-devel
</I>&gt;<i> &gt;&gt; BuildRequires:        pkgconfig(glib-2.0)
</I>&gt;<i> &gt;&gt; BuildRequires:        pkgconfig(libbsd)
</I>&gt;<i> &gt;&gt; BuildRequires:        help2man
</I>&gt;<i> &gt;&gt; Requires(pre):        update-alternatives
</I>&gt;<i> &gt;&gt; Requires(post):       systemd-units
</I>&gt;<i> &gt;&gt; Requires(preun):systemd-units
</I>&gt;<i> &gt;&gt; Requires(postun):systemd-units
</I>&gt;<i> &gt;&gt; Requires:     virtualgl
</I>&gt;<i> &gt;&gt; Requires:     x11-driver-video-nvidia-current
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; I thought this worked with nouveau as well?
</I>&gt;<i> 
</I>&gt;<i> Well so far the tests i performed always missed with noveau when
</I>&gt;<i> running optirun, Anyway, bumblebee is configured by default to use
</I>&gt;<i> nvidia driver.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; Requires:     dkms-bbswitch
</I>&gt;<i> &gt;&gt; Requires:     dkms-acpi_call
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Packages can't require dkms packages directly, see the aforementioned
</I>&gt;<i> &gt; DKMS policy (use kmod() instead). Requiring them directly breaks binary
</I>&gt;<i> &gt; dkms packages.
</I>&gt;<i> 
</I>&gt;<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.

&gt;<i> &gt;&gt; %description
</I>&gt;<i> &gt;&gt; Bumblebee daemon is a rewrite of the original Bumblebee service,
</I>&gt;<i> &gt;&gt; providing an elegant and stable means of managing Optimus hybrid
</I>&gt;<i> &gt;&gt; graphics chipsets.
</I>&gt;<i> &gt;&gt; A primary goal of this project is to not only enable use of the
</I>&gt;<i> &gt;&gt; discrete GPU for rendering, but also to enable smart power management
</I>&gt;<i> &gt;&gt; of the dGPU when it's not in use.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -qn Bumblebee
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %build
</I>&gt;<i> &gt;&gt; autoreconf -fi
</I>&gt;<i> &gt;&gt; %configure \
</I>&gt;<i> &gt;&gt; CONF_DRIVER=nvidia \
</I>&gt;<i> &gt;&gt; CONF_DRIVER_MODULE_NVIDIA=nvidia-current \
</I>&gt;<i> &gt;&gt; CONF_LDPATH_NVIDIA=/usr/lib/nvidia-current:/usr/lib64/nvidia-current \
</I>&gt;<i> &gt;&gt; CONF_MODPATH_NVIDIA=/usr/lib/nvidia-current/xorg,/usr/lib64/nvidia-curre
</I>&gt;<i> &gt;&gt; nt/xorg,/usr/lib/xorg/modules,/usr/lib64/xorg/modules,/usr/lib/xorg/extr
</I>&gt;<i> &gt;&gt; a-modules,/usr/lib64/xorg/extra-modules
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Use %{_libdir}, %ifarch and %{_prefix}/lib. 32-bit builds need only
</I>&gt;<i> &gt; %{_libdir}, 64-bit builds (%ifarch x86_64) need both %{_libdir} and
</I>&gt;<i> &gt; %{_prefix}/lib.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %make
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %install
</I>&gt;<i> &gt;&gt; rm -rf %{buildroot}
</I>&gt;<i> &gt;&gt; %makeinstall_std
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; install -m644 -D scripts/systemd/bumblebeed.service
</I>&gt;<i> &gt;&gt; %{buildroot}%{_sysconfdir}/systemd/system/bumblebeed.service install
</I>&gt;<i> &gt;&gt; -m644 -D scripts/sysvinit/bumblebeed
</I>&gt;<i> &gt;&gt; %{buildroot}%{_initrddir}/%{name}/bumblebeed
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files
</I>&gt;<i> &gt;&gt; %doc README.markdown doc/RELEASE_NOTES_3_0
</I>&gt;<i> &gt;&gt; %config(noreplace) %{_sysconfdir}/bash_completion.d/bumblebee
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; This shouldn't be %config.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %dir %{_sysconfdir}/bumblebee/
</I>&gt;<i> &gt;&gt; %config(noreplace) %{_sysconfdir}/bumblebee/bumblebee.conf
</I>&gt;<i> &gt;&gt; %config(noreplace) %{_sysconfdir}/bumblebee/xorg.conf.nouveau
</I>&gt;<i> &gt;&gt; %config(noreplace) %{_sysconfdir}/bumblebee/xorg.conf.nvidia
</I>&gt;<i> &gt;&gt; %{_sysconfdir}/systemd/system/bumblebeed.service
</I>&gt;<i> &gt;&gt; %{_initrddir}/%{name}/
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Extra '/'?
</I>&gt;<i> 
</I>&gt;<i> This one was a typo.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %{_sbindir}/bumblebeed
</I>&gt;<i> &gt;&gt; %{_bindir}/optirun
</I>&gt;<i> &gt;&gt; %{_bindir}/bumblebee-bugreport
</I>&gt;<i> &gt;&gt; %{_mandir}/man1/bumblebeed.1*
</I>&gt;<i> &gt;&gt; %{_mandir}/man1/optirun.1*
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %pre
</I>&gt;<i> &gt;&gt; %_pre_groupadd %{name}
</I>&gt;<i> &gt;&gt; if [ &quot;$1&quot; -eq &quot;1&quot; ];then
</I>&gt;<i> &gt;&gt;   /usr/sbin/update-alternatives --set gl_conf
</I>&gt;<i> &gt;&gt; %{_sysconfdir}/ld.so.conf.d/GL/standard.conf fi
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Forcibly changing configuration in %pre seems quite bad to me, though I
</I>&gt;<i> &gt; do not see much better solutions (except making XFdrake aware of
</I>&gt;<i> &gt; bumblebee, which is quite some work).
</I>&gt;<i> 
</I>&gt;<i> I did asked you about what would be the best option here and you said
</I>&gt;<i> that --set would be the best choice.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %post
</I>&gt;<i> &gt;&gt; %_post_service bumblebeed
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; [...]
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; if [ $1 -eq 1 ]; then
</I>&gt;<i> &gt;&gt;   # Initial set
</I>&gt;<i> &gt;&gt;   # Enable (but don't start) the unit by default
</I>&gt;<i> &gt;&gt;   /bin/systemctl enable bumblebeed.service
</I>&gt;<i> &gt;&gt; fi
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; I don't think this stuff is needed on Mageia, that is done by default.
</I>&gt;<i> 
</I>&gt;<i> Really? I didnt knew about it, is there any page documenting that?
</I>&gt;<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

&gt;<i> &gt;&gt; %preun
</I>&gt;<i> &gt;&gt; %_preun_service bumblebeed
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; [...]
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; if [ $1 -eq 0 ]; then
</I>&gt;<i> &gt;&gt;   # Package removal, not upgrade
</I>&gt;<i> &gt;&gt;   /bin/systemctl --no-reload disable bumblebeed.service
</I>&gt;<i> &gt;&gt;   /bin/systemctl stop bumblebeed.service
</I>&gt;<i> &gt;&gt; fi
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; That is done by %_preun_service already.
</I>&gt;<i> 
</I>&gt;<i> How come?
</I>&gt;<i> ~]$ rpm -E %_preun_service
</I>&gt;<i> /usr/share/rpm-helper/del-service %{name} $1
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %postun
</I>&gt;<i> &gt;&gt; %_postun_groupdel %{name}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; /bin/systemctl daemon-reload
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Already done by filetriggers.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; if [ $1 -ge 1 ]; then
</I>&gt;<i> &gt;&gt;   # Package upgrade, not uninstall
</I>&gt;<i> &gt;&gt;   /bin/systemctl try-restart bumblebeed.service
</I>&gt;<i> &gt;&gt; fi
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Already done by %_post_service.
</I>&gt;<i> 
</I>&gt;<i> I dont get why you said that again when:
</I>&gt;<i> 
</I>&gt;<i> ]$ rpm -E %_post_service
</I>&gt;<i> /usr/share/rpm-helper/add-service %{name} $1
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %changelog
</I>&gt;<i> &gt;&gt; * Mon Mar 19 2012 Simple &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmailcom</A>&gt; 3.0-1
</I>&gt;<i> &gt;&gt; - 3.0 (from git), initial package
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; bumblebee-ui.spec
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; Name:         bumblebee-ui
</I>&gt;<i> &gt;&gt; Summary:      Bumblebee User Interface
</I>&gt;<i> &gt;&gt; Group:                System/Configuration/Other
</I>&gt;<i> &gt;&gt; Version:      1.0
</I>&gt;<i> &gt;&gt; Release:      %mkrel 1
</I>&gt;<i> &gt;&gt; URL:          <A HREF="https://github.com/Bumblebee-Project/bumblebee-ui">https://github.com/Bumblebee-Project/bumblebee-ui</A>
</I>&gt;<i> &gt;&gt; License:      GPLv3
</I>&gt;<i> &gt;&gt; # source from git repo
</I>&gt;<i> &gt;&gt; <A HREF="git://github.com/Bumblebee-Project/bumblebee-ui.git">git://github.com/Bumblebee-Project/bumblebee-ui.git</A> Source0:    
</I>&gt;<i> &gt;&gt;  %{name}.tar.xz
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Needs to be versioned.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; BuildArch:    noarch
</I>&gt;<i> &gt;&gt; Requires:     bumblebee
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %description
</I>&gt;<i> &gt;&gt; This is a user interface for bumblebee.
</I>&gt;<i> &gt;&gt; A complete explanation of the feature of this user interface are
</I>&gt;<i> &gt;&gt; explained here :
</I>&gt;<i> &gt;&gt;     <A HREF="https://github.com/Bumblebee-Project/bumblebee-ui/wiki">https://github.com/Bumblebee-Project/bumblebee-ui/wiki</A>
</I>&gt;<i> &gt;&gt; Please give it a try and report bugs to:
</I>&gt;<i> &gt;&gt;     <A HREF="https://github.com/Bumblebee-Project/bumblebee-ui/issues">https://github.com/Bumblebee-Project/bumblebee-ui/issues</A>
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; &quot;Please give it a try&quot; is inappropriate in a %description. This should
</I>&gt;<i> &gt; also briefly explain what bumblebee is.
</I>&gt;<i> 
</I>&gt;<i> I just copied whats in the bumblebee page
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %files
</I>&gt;<i> &gt;&gt; %{_sysconfdir}/xdg/autostart/bumblebee-indicator.desktop
</I>&gt;<i> &gt;&gt; %{_bindir}/bumblebee*
</I>&gt;<i> &gt;&gt; %{_datadir}/%{name}/
</I>&gt;<i> &gt;&gt; %{_datadir}/applications/*
</I>&gt;<i> &gt;&gt; %{_iconsdir}/hicolor/*
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -qn %{name}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %install
</I>&gt;<i> &gt;&gt; rm -rf %{buildroot}
</I>&gt;<i> &gt;&gt; mkdir -p %{buildroot}%{_iconsdir}/hicolor/48x48/apps/
</I>&gt;<i> &gt;&gt; cp icons/*.* %{buildroot}%{_iconsdir}/hicolor/48x48/apps/
</I>&gt;<i> &gt;&gt; mkdir -p %{buildroot}%{_datadir}/{%{name},applications}
</I>&gt;<i> &gt;&gt; cp app/*.* %{buildroot}%{_datadir}/%{name}
</I>&gt;<i> &gt;&gt; cp bumblebee-app-settings.desktop %{buildroot}%{_datadir}/applications/
</I>&gt;<i> &gt;&gt; cp bumblebee-indicator.desktop %{buildroot}%{_datadir}/applications/
</I>&gt;<i> &gt;&gt; mkdir -p %{buildroot}%{_bindir}
</I>&gt;<i> &gt;&gt; ln -s %{_datadir}/%{name}/AppSettings.py
</I>&gt;<i> &gt;&gt; %{buildroot}%{_bindir}/bumblebee-app-settings ln -s
</I>&gt;<i> &gt;&gt; %{_datadir}/%{name}/Bumblebee-Indicator.py
</I>&gt;<i> &gt;&gt; %{buildroot}%{_bindir}/bumblebee-indicator
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; chmod +x
</I>&gt;<i> &gt;&gt; %{buildroot}%{_datadir}/applications/bumblebee-app-settings.desktop
</I>&gt;<i> &gt;&gt; chmod +x
</I>&gt;<i> &gt;&gt; %{buildroot}%{_datadir}/applications/bumblebee-indicator.desktop chmod
</I>&gt;<i> &gt;&gt; +x -R %{buildroot}%{_datadir}/%{name}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; # Always start in boot
</I>&gt;<i> &gt;&gt; mkdir -p %{buildroot}%{_sysconfdir}/xdg/autostart
</I>&gt;<i> &gt;&gt; cp bumblebee-indicator.desktop %{buildroot}%{_sysconfdir}/xdg/autostart
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %changelog
</I>&gt;<i> &gt;&gt; * Mon Mar 19 2012 Simple &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>&gt; 1.0-1
</I>&gt;<i> &gt;&gt; - initial package
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; dkms-acpi_call.spec
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %define modname acpi_call
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; Name:           dkms-%{modname}
</I>&gt;<i> &gt;&gt; Summary:        A kernel module that enables you to call ACPI methods
</I>&gt;<i> &gt;&gt; Group:          System/Kernel and hardware
</I>&gt;<i> &gt;&gt; Version:        0.1
</I>&gt;<i> &gt;&gt; Release:        %mkrel 1
</I>&gt;<i> &gt;&gt; URL:            <A HREF="https://github.com/Bumblebee-Project/acpi_call">https://github.com/Bumblebee-Project/acpi_call</A>
</I>&gt;<i> &gt;&gt; License:        GPL
</I>&gt;<i> &gt;&gt; # source from git repo <A HREF="git://github.com/Bumblebee-Project/acpi_call.git">git://github.com/Bumblebee-Project/acpi_call.git</A>
</I>&gt;<i> &gt;&gt; Source0:      %{modname}.tar.xz
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Needs to be versioned.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; BuildArch:    noarch
</I>&gt;<i> &gt;&gt; Requires(post):       dkms
</I>&gt;<i> &gt;&gt; Requires(preun):dkms
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Needs to require dkms.
</I>&gt;<i> 
</I>&gt;<i> Again i dont get why when dkms is only used in post/preun scripts
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; %description
</I>&gt;<i> &gt;&gt; A kernel module that enables you to call ACPI methods by writing the
</I>&gt;<i> &gt;&gt; method name followed by arguments to /proc/acpi/call.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files
</I>&gt;<i> &gt;&gt; %doc README
</I>&gt;<i> &gt;&gt; %{_usrsrc}/%{modname}-%{version}-%{release}/*
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %post
</I>&gt;<i> &gt;&gt; set -x
</I>&gt;<i> &gt;&gt; /usr/sbin/dkms add -m %{modname} -v %{version}-%{release}
</I>&gt;<i> &gt;&gt; --rpm_safe_upgrade || : /usr/sbin/dkms build -m %{modname} -v
</I>&gt;<i> &gt;&gt; %{version}-%{release} --rpm_safe_upgrade || : /usr/sbin/dkms install -m
</I>&gt;<i> &gt;&gt; %{modname} -v %{version}-%{release} --rpm_safe_upgrade || :
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; /sbin/modprobe %{modname} || :
</I>&gt;<i> &gt; Same comments as for the previous dkms package, see mentioned policy.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %preun
</I>&gt;<i> &gt;&gt; dkms remove --binary -m %{modname} -v %{version}-%{release}
</I>&gt;<i> &gt;&gt; --rpm_safe_upgrade --all || : /sbin/rmmod %{modname} || :
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -qn %{modname}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %install
</I>&gt;<i> &gt;&gt; rm -rf %{buildroot}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; mkdir -p -m755 %{buildroot}%{_usrsrc}/%{modname}-%{version}-%{release}
</I>&gt;<i> &gt;&gt; cp -a * %{buildroot}%{_usrsrc}/%{modname}-%{version}-%{release}
</I>&gt;<i> &gt;&gt; # DKMS config
</I>&gt;<i> &gt;&gt; cat &gt; %{buildroot}%{_usrsrc}/%{modname}-%{version}-%{release}/dkms.conf
</I>&gt;<i> &gt;&gt; &lt;&lt; 'EOF' PACKAGE_NAME=&quot;%{modname}&quot;
</I>&gt;<i> &gt;&gt; PACKAGE_VERSION=&quot;%{version}-%{release}&quot;
</I>&gt;<i> &gt;&gt; MAKE[0]=&quot;make default KERNELPATH=${kernel_source_dir}&quot;
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; MAKE_MATCH[0]=&quot;make load KERNELPATH=${kernel_source_dir}&quot;
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; MAKE_MATCH[#] is a regular expression field, you have something very
</I>&gt;<i> &gt; different in there. MAKE_MATCH[#] line is unneeded here.
</I>&gt;<i> 
</I>&gt;<i> That line shouldnt be there, seams i didnt attach the most updated spec...
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; BUILT_MODULE_NAME[0]=&quot;%{modname}&quot;
</I>&gt;<i> &gt;&gt; DEST_MODULE_LOCATION[0]=&quot;/kernel/drivers/acpi&quot;
</I>&gt;<i> &gt;&gt; REMAKE_INITRD=&quot;no&quot;
</I>&gt;<i> &gt;&gt; AUTOINSTALL=&quot;yes&quot;
</I>&gt;<i> &gt;&gt; EOF
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %changelog
</I>&gt;<i> &gt;&gt; * Mon Mar 19 2012 Simple &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmailcom</A>&gt; 1.0-1
</I>&gt;<i> &gt;&gt; - initial package
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; libindicator.spec
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %define major 7
</I>&gt;<i> &gt;&gt; %define libtool %mklibname indicator3
</I>&gt;<i> &gt;&gt; %define libname %mklibname indicator3_ %{major}
</I>&gt;<i> &gt;&gt; %define libdevel %mklibname indicator3 -d
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; Name:           libindicator
</I>&gt;<i> &gt;&gt; Summary:        A set of symbols and convience functions for indicators
</I>&gt;<i> &gt;&gt; Group:          System/Libraries
</I>&gt;<i> &gt;&gt; Version:        0.4.93
</I>&gt;<i> &gt;&gt; Release:        %mkrel 1
</I>&gt;<i> &gt;&gt; License:        GPL-3.0
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Incorrect license tag.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; URL:            <A HREF="http://launchpad.net/libindicator">http://launchpad.net/libindicator</A>
</I>&gt;<i> &gt;&gt; Source0:      
</I>&gt;<i> &gt;&gt;  <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>&gt;<i> &gt;&gt; ion}.tar.gz BuildRequires:  pkgconfig(gtk+-3.0)
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %description
</I>&gt;<i> &gt;&gt; A set of symbols and convience functions that all indicators would like
</I>&gt;<i> &gt;&gt; to use. Not of real use outside of the Ayatana indicators project.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; #--------------------------------------------------------------------
</I>&gt;<i> &gt;&gt; %package -n %{libname}
</I>&gt;<i> &gt;&gt; Summary:        libindicator3 library
</I>&gt;<i> &gt;&gt; Group:          System/Libraries
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %description -n %{libname}
</I>&gt;<i> &gt;&gt; Library for libindicator3.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files -n %{libname}
</I>&gt;<i> &gt;&gt; %{_libdir}/libindicator3.so.%{major}*
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; #--------------------------------------------------------------------
</I>&gt;<i> &gt;&gt; %package -n %{libtool}-tools
</I>&gt;<i> &gt;&gt; Summary:        libindicator3 tool
</I>&gt;<i> &gt;&gt; Group:          System/Libraries
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %description -n %{libtool}-tools
</I>&gt;<i> &gt;&gt; Tool to load libindicator3 plugins.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files -n %{libtool}-tools
</I>&gt;<i> &gt;&gt; %{_libdir}/indicator-loader3
</I>&gt;<i> &gt;&gt; %{_libdir}/libdummy-indicator-blank.so
</I>&gt;<i> &gt;&gt; %{_libdir}/libdummy-indicator-entry-func.so
</I>&gt;<i> &gt;&gt; %{_libdir}/libdummy-indicator-null.so
</I>&gt;<i> &gt;&gt; %{_libdir}/libdummy-indicator-signaler.so
</I>&gt;<i> &gt;&gt; %{_libdir}/libdummy-indicator-simple.so
</I>&gt;<i> &gt;&gt; %{_libdir}/libdummy-indicator-visible.so
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; #--------------------------------------------------------------------
</I>&gt;<i> &gt;&gt; %package -n %{libdevel}
</I>&gt;<i> &gt;&gt; Summary:        libindicator3 development files
</I>&gt;<i> &gt;&gt; Group:          Development/GNOME and GTK+
</I>&gt;<i> &gt;&gt; Requires:     %{libname} &gt;= %{version}
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Shouldn't this be &quot;=&quot;?
</I>&gt;<i> 
</I>&gt;<i> I think &gt;= 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.

&gt;<i> &gt;&gt; %description -n %{libdevel}
</I>&gt;<i> &gt;&gt; Development files needed by libindicator3.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files -n %{libdevel}
</I>&gt;<i> &gt;&gt; %doc AUTHORS ChangeLog COPYING INSTALL
</I>&gt;<i> &gt;&gt; %{_includedir}/libindicator3-0.4/libindicator/
</I>&gt;<i> &gt;&gt; %{_libdir}/libindicator3.so
</I>&gt;<i> &gt;&gt; %{_libdir}/pkgconfig/indicator3-0.4.pc
</I>&gt;<i> &gt;&gt; %{_datadir}/libindicator/80indicator-debugging
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; #--------------------------------------------------------------------
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -q
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %build
</I>&gt;<i> &gt;&gt; %configure \
</I>&gt;<i> &gt;&gt;   --disable-static
</I>&gt;<i> &gt;&gt; %make
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %install
</I>&gt;<i> &gt;&gt; %makeinstall_std
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; # Clean .la files
</I>&gt;<i> &gt;&gt; find %{buildroot}%{_libdir} -name '*.la' -delete -print
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %changelog
</I>&gt;<i> &gt;&gt; * Sun Mar 18 2012 Simple &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>&gt; 0.4.93-1
</I>&gt;<i> &gt;&gt; - first package
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; virtualgl.spec
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %define oname VirtualGL
</I>&gt;<i> &gt;&gt; %define libname %mklibname %{name}
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; Name:           virtualgl
</I>&gt;<i> &gt;&gt; Summary:        A toolkit for displaying OpenGL applications to thin
</I>&gt;<i> &gt;&gt; clients Group:          Networking/Other
</I>&gt;<i> &gt;&gt; Version:        2.3
</I>&gt;<i> &gt;&gt; Release:        %mkrel 1
</I>&gt;<i> &gt;&gt; URL:            <A HREF="http://www.virtualgl.org">http://www.virtualgl.org</A>
</I>&gt;<i> &gt;&gt; License:        wxWindows Library License v3.1
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Incorrect tag, see license policy as mentioned previously.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; Source0:    
</I>&gt;<i> &gt;&gt;  <A HREF="http://prdownloads.sourceforge.net/virtualgl/%{oname">http://prdownloads.sourceforge.net/virtualgl/%{oname</A>}-%{version}.tar.g
</I>&gt;<i> &gt;&gt; z Patch0:               vgl_2.3_patch0
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Please name this properly, and with a .patch extension.
</I>&gt;<i> 
</I>&gt;<i> Again a typo...
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; BuildRequires:        X11-devel
</I>&gt;<i> &gt;&gt; BuildRequires:        jpeg-devel
</I>&gt;<i> &gt;&gt; BuildRequires:        cmake
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %description
</I>&gt;<i> &gt;&gt; VirtualGL is a library which allows most Linux OpenGL applications to be
</I>&gt;<i> &gt;&gt; remotely displayed to a thin client without the need to alter the
</I>&gt;<i> &gt;&gt; applications in any way.  VGL inserts itself into an application at run
</I>&gt;<i> &gt;&gt; time and intercepts a handful of GLX calls, which it reroutes to the
</I>&gt;<i> &gt;&gt; server's display (which presumably has a 3D accelerator attached.)
</I>&gt;<i> &gt;&gt;  This causes all 3D rendering to occur on the server's display.  As
</I>&gt;<i> &gt;&gt; each frame is rendered by the server, VirtualGL reads back the pixels
</I>&gt;<i> &gt;&gt; from the server's framebuffer and sends them to the client for
</I>&gt;<i> &gt;&gt; re-compositing into the appropriate X Window.  VirtualGL can be used to
</I>&gt;<i> &gt;&gt; give hardware-accelerated 3D capabilities to VNC or other remote
</I>&gt;<i> &gt;&gt; display environments that lack GLX support.  In a LAN environment, it
</I>&gt;<i> &gt;&gt; can also be used with its built-in motion-JPEG video delivery system to
</I>&gt;<i> &gt;&gt; remotely display full-screen 3D applications at 20+ frames/second.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; VirtualGL is based upon ideas presented in various academic papers on
</I>&gt;<i> &gt;&gt; this topic, including &quot;A Generic Solution for Hardware-Accelerated
</I>&gt;<i> &gt;&gt; Remote Visualization&quot; (Stegmaier, Magallon, Ertl 2002) and &quot;A Framework
</I>&gt;<i> &gt;&gt; for Interactive Hardware Accelerated Remote 3D-Visualization&quot; (Engel,
</I>&gt;<i> &gt;&gt; Sommer, Ertl 2000.)
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files
</I>&gt;<i> &gt;&gt; %{_bindir}/*
</I>&gt;<i> &gt;&gt; %{_defaultdocdir}/%{name}/
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Mark docs as %doc.
</I>&gt;<i> 
</I>&gt;<i> Correct, that also missed my attention.
</I>&gt;<i> 
</I>&gt;<i> &gt;&gt; #--------------------------------------------------------------------
</I>&gt;<i> &gt;&gt; %package -n %libname
</I>&gt;<i> &gt;&gt; Summary: Libraries injected by VirtualGL into applications that are ran
</I>&gt;<i> &gt;&gt; through it Group: System/Libraries
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %description -n %libname
</I>&gt;<i> &gt;&gt; Libraries injected by VirtualGL into applications that are ran throught
</I>&gt;<i> &gt;&gt; it. Lib package allow installing 32 and 64 bits libraries at the same
</I>&gt;<i> &gt;&gt; time.
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files -n %libname
</I>&gt;<i> &gt;&gt; %dir %{_libdir}/fakelib/
</I>&gt;<i> &gt;&gt; %{_libdir}/fakelib/libGL.so
</I>&gt;<i> &gt;&gt; %{_libdir}/librrfaker.so
</I>&gt;<i> &gt;&gt; %{_libdir}/libdlfaker.so
</I>&gt;<i> &gt;&gt; %{_libdir}/libgefaker.so
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; This will need %_provides_exceptions or %_exclude_files_from_autoprov so
</I>&gt;<i> &gt; that devel(GL) won't be provided. This would confuse the -devel
</I>&gt;<i> &gt; dependencies of the distribution, and libvirtualgl could sometimes be
</I>&gt;<i> &gt; installed when libmesagl-devel is intended.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; #--------------------------------------------------------------------
</I>&gt;<i> &gt;&gt; %package devel
</I>&gt;<i> &gt;&gt; Summary:      A toolkit for displaying OpenGL applications to thin
</I>&gt;<i> &gt;&gt; clients Group:                Networking/Other
</I>&gt;<i> &gt;&gt; Requires:     %{libname} &gt;= %{version}
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Should be '=' AFAICS.
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt;&gt; %description devel
</I>&gt;<i> &gt;&gt; VirtualGL is a library which allows most Linux OpenGL applications to be
</I>&gt;<i> &gt;&gt; remotely displayed to a thin client without the need to alter the
</I>&gt;<i> &gt;&gt; applications in any way.  VGL inserts itself into an application at run
</I>&gt;<i> &gt;&gt; time and intercepts a handful of GLX calls, which it reroutes to the
</I>&gt;<i> &gt;&gt; server's display (which presumably has a 3D accelerator attached). This
</I>&gt;<i> &gt;&gt; causes all 3D rendering to occur on the server's display.  As each frame
</I>&gt;<i> &gt;&gt; is rendered by the server, VirtualGL reads back the pixels from the
</I>&gt;<i> &gt;&gt; server's framebuffer and sends them to the client for re-compositing
</I>&gt;<i> &gt;&gt; into the appropriate X Window. VirtualGL can be used to give hardware-
</I>&gt;<i> &gt;&gt; -accelerated 3D capabilities to VNC or other remote display
</I>&gt;<i> &gt;&gt; environments that lack GLX support.  In a LAN environment, it can also
</I>&gt;<i> &gt;&gt; be used with its built-in motion-JPEG video delivery system to remotely
</I>&gt;<i> &gt;&gt; display full-screen 3D applications at 20+ frames/second.
</I>&gt;<i> &gt;&gt; VirtualGL is based upon ideas presented in various academic papers on
</I>&gt;<i> &gt;&gt; this topic, including &quot;A Generic Solution for Hardware-Accelerated
</I>&gt;<i> &gt;&gt; Remote Visualization&quot; (Stegmaier, Magallon, Ertl 2002) and &quot;A Framework
</I>&gt;<i> &gt;&gt; for Interactive Hardware Accelerated Remote 3D-Visualization&quot; (Engel,
</I>&gt;<i> &gt;&gt; Sommer, Ertl 2000.)
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %files devel
</I>&gt;<i> &gt;&gt; %{_includedir}/rrtransport.h
</I>&gt;<i> &gt;&gt; %{_includedir}/rr.h
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; #--------------------------------------------------------------------
</I>&gt;<i> &gt;&gt; %prep
</I>&gt;<i> &gt;&gt; %setup -qn %{oname}-%{version}
</I>&gt;<i> &gt;&gt; %patch0 -p1
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %build
</I>&gt;<i> &gt;&gt; cmake -G &quot;Unix Makefiles&quot; \
</I>&gt;<i> &gt;&gt;     -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \
</I>&gt;<i> &gt;&gt;     -DCMAKE_INSTALL_PREFIX=%{_prefix} \
</I>&gt;<i> &gt;&gt;     -DVGL_DOCDIR=%{_defaultdocdir}/%{name} \
</I>&gt;<i> &gt;&gt;     -DVGL_LIBDIR=%{_libdir} \
</I>&gt;<i> &gt;&gt;     -DTJPEG_INCLUDE_DIR=%{_includedir} \
</I>&gt;<i> &gt;&gt;     -DTJPEG_LIBRARY=%{_libdir}/libturbojpeg.so
</I>&gt;<i> &gt; 
</I>&gt;<i> &gt; Should use %cmake.
</I>&gt;<i> 
</I>&gt;<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 :-)

&gt;<i> &gt;&gt; %make
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %install
</I>&gt;<i> &gt;&gt; rm -rf %{buildroot}
</I>&gt;<i> &gt;&gt; %makeinstall_std
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; rm -rf %{buildroot}%{_prefix}/fakelib
</I>&gt;<i> &gt;&gt; mkdir -p %{buildroot}%{_libdir}/fakelib
</I>&gt;<i> &gt;&gt; ln -sf ../librrfaker.so %{buildroot}%{_libdir}/fakelib/libGL.so
</I>&gt;<i> &gt;&gt; mv -f %{buildroot}%{_bindir}/glxinfo %{buildroot}%{_bindir}/glxinfo2
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; 
</I>&gt;<i> &gt;&gt; %changelog
</I>&gt;<i> &gt;&gt; * Mon Mar 19 2012 Simple &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-dev">simplew8 at gmail.com</A>&gt; 2.3-1
</I>&gt;<i> &gt;&gt; - 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.

&gt;<i> &gt; --
</I>&gt;<i> &gt; 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>