打印

帮忙看看这个SPEC文件是否合格:fluxbox

帮忙看看这个SPEC文件是否合格:fluxbox

[code:1]
Name:           fluxbox
Version:        1.0rc
Release:        1mgc

Summary:        Window Manager based on Blackbox

Group:          User Interface/Desktops
License:        MIT
URL:            http://fluxbox.sourceforge.net

Source0:        http://download.sourceforge.net/fluxbox/fluxbox-1.0rc.tar.bz2

BuildRoot:        %{_tmppath}/%{name}-%{version}-buildroot
BuildPrereq: imlib2-devel, zlib-devel, libXft-devel, fontconfig-devel

%description

Fluxbox is yet another windowmanager for X.  It's based on the Blackbox 0.61.1
code. Fluxbox looks like blackbox and handles styles, colors, window placement
and similar thing exactly like blackbox (100% theme/style compatibility).  So
what's the difference between fluxbox and blackbox then?  The answer is: LOTS!

Have a look at the homepage for more info ;)

%prep
%setup -q

%build
%configure      --enable-nls \
                                --enable-imlib2

#make %{?_smp_mflags}

%install
rm -rf $RPM_BUILD_ROOT

make install DESTDIR=$RPM_BUILD_ROOT

# this is for Magic Linux.
mkdir -p $RPM_BUILD_ROOT%{_datadir}/xsessions/
#install -m 0755 -p %SOURCE3 $RPM_BUILD_ROOT%{_datadir}/xsessions/
#install -m 0755 -p %SOURCE4 $RPM_BUILD_ROOT%{_bindir}/fluxbox-xdg-menu

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root,755)
%doc AUTHORS COPYING ChangeLog INSTALL NEWS README TODO
%{_bindir}/*
%{_mandir}/man1/*
%{_datadir}/%{name}

%changelog
* Wed Jun 21 2006 Michael Bibby <michaelbibby[AT]gmail.com>
1.0rc
- First spec file for Magic Linux.
[/code:1]
竹杖芒鞋轻胜马,只影向天涯。
----

TOP

小弟第一次打包,很多细节不太懂。各位如果有什么资料可以推荐的,还请多帮忙。

这次的SPEC文件的问题是:
* 对于依赖的包不是非常清楚,只列出了几个。大家通常都是如何检查它的依赖包的?
* 没有指定安装路径。默认是/usr,但是我觉得放在'/usr/local'会更好一些(除了基本系统之外的软件,都安装到'/usr/local'底下)。
* 自己暂时没发现。
竹杖芒鞋轻胜马,只影向天涯。
----

TOP

依赖列出几个就行.
打rpm包的话,在magic,默认路径最好是/usr

TOP

路径可以不用考虑,默认路径交给编译参数./configure \ 后面的定义,主要还是
%install
%post
%postun
%file
http://haulm.clanmark.com
自古多情空余恨,几人独潇洒。
问君相伴何所思,唯叹红叶飞。
凭栏窗外一皓月,冷风抚面,寒星如冰。
回想前事独伤感,难分难离,倒是山峦草芥,依旧青。

TOP

引用:
%SOURCE3
????????

TOP

这个帖子似乎应该发在这里,我把它移到这里,希望 MichaelBibby 兄弟不要介意。  


人欲盡淨,觀萬物,各復歸其根,精之至也。
  • 不要重复自己(Don't Repeat Yourself )。
  • 约定优于配置(Convention Over Configuration )。

TOP

BuildRoot:   %{_tmppath}/%{name}-%{version}-buildroot
通常我们要加 %{release}
%{_tmppath}/%{name}-%{version}-%{release}-buildroot
构建根路径越冗长越安全。这是为了避免并行编译多个 rpm 时可能的相互覆盖。

BuildPrereq: imlib2-devel, zlib-devel, libXft-devel, fontconfig-devel
应该是 BuildRequires: 而不是 BuildPrereq: ,前者指编译软件过程中该软件自身依赖哪些包,后者指编译基本环境需要预先满足的基本条件,一般是一些特定命令,比如 spec 里的编译脚本用到了 perl 脚本,那么需要写作 BuildPrereq:  /usr/bin/perl

任何官方发布的包均应该默认使用 /usr,/usr/local 是给用户自己从源码编译准备的空间,你可以利用  spec 头部的 Prefix: %{_prefix} 参数允许用户安装 rpm 时将文件放到其它位置。%{_prefix} 宏一般是指 /usr。

#make %{?_smp_mflags}
不要跳过 make 而直接使用 make install,因为那样做有时并不可靠,就是说不一定  make install 一定会包含 make 动作。况且这样做并没有利用并行编译参数 %{?_smp_mflags}


请仔细阅读 rpm 建包原理里的说明。一切均应该力图标准化。magic 2.0 里大部分包是 kanker 打的,一部分是我打的,其它人也有一些。这里面 magic 有一套自己的打包标准,抽空我会写出来。

TOP

[quote:cc4361abf2="KDE"]BuildRoot:   %{_tmppath}/%{name}-%{version}-buildroot
通常我们要加 %{release}
%{_tmppath}/%{name}-%{version}-%{release}-buildroot
构建根路径越冗长越安全。这是为了避免并行编译多个 rpm 时可能的相互覆盖。

BuildPrereq: imlib2-devel, zlib-devel, libXft-devel, fontconfig-devel
应该是 BuildRequires: 而不是 BuildPrereq: ,前者指编译软件过程中该软件自身依赖哪些包,后者指编译基本环境需要预先满足的基本条件,一般是一些特定命令,比如 spec 里的编译脚本用到了 perl 脚本,那么需要写作 BuildPrereq:  /usr/bin/perl

任何官方发布的包均应该默认使用 /usr,/usr/local 是给用户自己从源码编译准备的空间,你可以利用  spec 头部的 Prefix: %{_prefix} 参数允许用户安装 rpm 时将文件放到其它位置。%{_prefix} 宏一般是指 /usr。

#make %{?_smp_mflags}
不要跳过 make 而直接使用 make install,因为那样做有时并不可靠,就是说不一定  make install 一定会包含 make 动作。况且这样做并没有利用并行编译参数 %{?_smp_mflags}


请仔细阅读 rpm 建包原理里的说明。一切均应该力图标准化。magic 2.0 里大部分包是 kanker 打的,一部分是我打的,其它人也有一些。这里面 magic 有一套自己的打包标准,抽空我会写出来。[/quote]
恩,受教了。学会了一点。希望各位大哥多多指教。

PS:刚打好了wxPython-2.6.3.2的RPM包。已经用上了    。这东西对学习wxPython是必须的,而且我还下好了电子书《wxPython in Action》及其书中的示例代码。暂时还不知道如何将电子书打包成RPM。
我现在把fluxbox的SPEC改改。
竹杖芒鞋轻胜马,只影向天涯。
----

TOP

[quote:574e22c9fb="KDE"]这里面 magic 有一套自己的打包标准,抽空我会写出来。[/quote]

公开,大家一起努力。
中国Linux校园联盟 Linux Campus Union of China(LCUC)  在中国,学生永远是不可忽视的重要力量,让广大学生学习和使用Linux是一个让Linux快速普及的捷径。 希望所有爱好linux的人来到我们中间,用我们的力量创造一个美好的未来。 私人空间

TOP