红联Linux门户
Linux帮助

Linux下制作简单的仿Windows安装界面

发布时间:2006-08-25 08:51:39来源:红联作者:涵琳
安装包特性:

  1、开始拷贝文件之前的操作都具有可逆性;
  2、具有“默认安装”与“自定义安装”两种安装方式可选;
  3、自动生成卸载脚本;
  4、安装时能自动建立桌面快捷方式,卸载时能自动清除配置文件、游戏存档等软件残留文件。
  以下操作以在红旗桌面版4.1下制作EVA-0.4.0的安装包为例,需要读者掌握编写SPEC文件、建立与编辑桌面配置文件*.desktop、shell脚本编程、Xdialog方面的相关知识。

制作步骤:

  1、以root身份登录系统,或者在普通用户下以root权限进行操作。
  2、获取软件编译安装后的目录结构
  将软件的源码压缩包放到/usr/src/redflag/SOURCES目录下,在/usr/src/redflag/SPECS目录下建立一个SPEC文件,例如eva.spec。内容为:

[code]%define prefix /usr
%define appsdir /usr/share/applnk/App/Internet
Name: eva
Summary: KDE环境下的QQ客户端软件
Version: 0.4.0
Release: rfdt4.1
Source0: %{name}-%{version}.tar.bz2
Group: Applications/Internet
BuildRoot: /tmp/build-root-%{name}
License: GPL
Url:
http://www.linuxfans.org/downloads/

Packager: your name
%description
Eva 是在KDE桌面下,基于Qt库开发的软件, ………
%prep
rm -rf %{buildroot}
%setup -n eva
%build
./configure --prefix=%{prefix}
make
%install
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{appsdir}
make DESTDIR=$RPM_BUILD_ROOT install
cd $RPM_BUILD_ROOT
find . -type d | sed '1,2d;s,^\.,\%attr(-\,root\,root) \%dir ,' > $RPM_BUILD_DIR/file.list.%{name}
find . -type f | sed 's,^\.,\%attr(-\,root\,root) ,' >> $RPM_BUILD_DIR/file.list.%{name}
find . -type l | sed 's,^\.,\%attr(-\,root\,root) ,' >> $RPM_BUILD_DIR/file.list.%{name}
%clean
%files -f ../file.list.%{name}
%defattr(-,root,root)
%doc AUTHORS ChangeLog COPYING NEWS README README.zh
%changelog[/code]

  在终端进入/usr/src/redflag/SPECS目录,执行:
[code]rpmbuild -bb eva.spec[/code]
  完成后,/tmp/build-root-eva目录下就是EVA-0.4.0编译安装后的目录结构,/usr/src/redflag/BUILD目录下的file.list.eva文件是EVA-0.4.0编译安装后的文件列表。

3、配齐文件

  建立/tmp/evainstaller目录,将
[code]installer-files.tar.bz2[/code]
  解压后得到的installer-files文件夹里的所有文件都放到这个目录里。
  将/tmp下的build-root-eva目录拷贝到/tmp/evainstaller目录,改名为eva-0.4.0,在/tmp/evainstaller/eva-0.4.0/usr/share/applnk/App/Internet下建立 EVA 的开始菜单(K菜单)项目,记得包括eva-uninstall.desktop(执行的命令为“/usr/share/doc/eva-0.4.0/uninstall.bin”)。
  为“软件名-版本号-rfdt4.1-installer”和“软件名-版本号-rfdt4.1-setup”这两个文件改名,例如eva-0.4.0-rfdt4.1-installer和eva-0.4.0-rfdt4.1-setup,并建议一个软件的桌面配置文件(建立桌面快捷方式的时候使用),例如eva.desktop。

4、修改eva-0.4.0-rfdt4.1-installer和eva-0.4.0-rfdt4.1-setup这两个文件

  其中eva-0.4.0-rfdt4.1-installer需要修改的地方只有“name=”和“ver=”这两个地方。
  而eva-0.4.0-rfdt4.1-setup需要修改的地方比较多,除了软件名和版本号需要定义外,“选择安装类型的模块”和“选择安装类型”需要修改文字说明;“默认安装的模块”和“自定义安装的模块”需要参照file.list.eva文件的内容来修改拷贝时的操作;“生成卸载脚本的模块”需要修改删除的文件和目录;“安装完毕给予提示的模块”需要修改文字说明。

5、生成安装包

  至此,相关文件已经准备完毕了,最好检查一下,看看/tmp/evainstaller目录下的文件是否是这些:
[code]custom_install.xpm eva-0.4.0-rfdt4.1-setup uninstall_complete.xpm warning.xpm
default_install.xpm eva.desktop uninstall.xpm
eva-0.4.0 install_type.xpm Xdialog
eva-0.4.0-rfdt4.1-installer the_end.xpm Xdialog.mo[/code]
  确认文件齐全后,将其压缩,在终端进入/tmp/evainstaller目录,执行:

[code]tar jcvf eva.tar.bz2 custom_install.xpm default_install.xpm eva-0.4.0 eva-0.4.0-rfdt4.1-setup eva.desktop install_type.xpm the_end.xpm uninstall_complete.xpm uninstall.xpm warning.xpm Xdialog Xdialog.mo[/code]

合成安装包:

[code]cat eva-0.4.0-rfdt4.1-installer eva.tar.bz2 >eva-0.4.0-rfdt4.1-installer.bin
chmod +x eva-0.4.0-rfdt4.1-installer.bin[/code]
  现在双击eva-0.4.0-rfdt4.1-installer.bin就可以开始安装了。
文章评论

共有 4 条评论

  1. hawkyuan 于 2013-06-25 00:01:38发表:

    没什么意义!!

  2. easeus_wei 于 2013-06-19 10:47:47发表:

    有用 谢谢分享

  3. supersq 于 2006-08-28 13:21:35发表:

  4. 涵琳 于 2006-08-25 08:52:02发表:

    请不要轻易的尝试本文所介绍的方法