Linux下製作簡單的仿Windows安裝介面(轉)
安裝包特性:
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。內容為:
%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:
[url=][/url]
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
在終端進入/usr/src/redflag/SPECS目錄,執行:
rpmbuild -bb eva.spec
完成後,/tmp/build-root-eva目錄下就是EVA-0.4.0編譯安裝後的目錄結構,/usr/src/redflag/BUILD目錄下的file.list.eva檔案是EVA-0.4.0編譯安裝後的檔案列表。
3、配齊檔案
建立/tmp/evainstaller目錄,將
installer-files.tar.bz2
解壓後得到的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目錄下的檔案是否是這些:
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
確認檔案齊全後,將其壓縮,在終端進入/tmp/evainstaller目錄,執行:
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
合成安裝包:
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
現在雙擊eva-0.4.0-rfdt4.1-installer.bin就可以開始安裝了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-941304/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Debian安裝包的簡單製作
- Windows CE/Pocket PC安裝盤的製作 (轉)Windows
- Windows下的Memcache安裝 linux下的Memcache安裝WindowsLinux
- debian Linux下製作deb包的簡便方法(轉)Linux
- hadoop的Linux下簡單安裝步驟HadoopLinux
- monogdb windows環境下 安裝及使用簡單示例MonoWindows
- 在 windows 下安裝和簡單配置 trac 0.12Windows
- 用jsmooth + inno生成exe並製作簡單安裝包JS
- windows下安裝laravel簡單步驟以及碰到的問題WindowsLaravel
- 簡單的製作frameworkFramework
- 賜教在windows下安裝linux的問題(轉)WindowsLinux
- PyGTK在Windows下的安裝(轉)Windows
- windows10和安裝linux雙系統安裝教程(超簡單)WindowsLinux
- Linux下的廣播程式製作(轉)Linux
- Windows 8安裝隨身碟的製作辦法Windows
- linux製作安裝包的兩種方法Linux
- Windows下安裝nginx教程(轉)WindowsNginx
- 自己編寫安裝製作程式 (轉)
- Ubuntu下簡單安裝微信Ubuntu
- Linux下編譯安裝Mysql 5.5的簡單步驟Linux編譯MySql
- 簡單安裝PHP在Linux下的執行環境PHPLinux
- 簡單的網頁製作網頁
- redis 簡介及windows 下的redis 安裝RedisWindows
- 系統安裝引導盤的製作(轉)
- linux上安裝Docker(非常簡單的安裝方法)LinuxDocker
- 在Linux下製作Linux&windows啟動盤LinuxWindows
- Windows環境下安裝LinuxWindowsLinux
- linux 安裝 mysql簡單教程LinuxMySql
- LInux簡單安裝和命令Linux
- oracle 10g在linux下的安裝及簡單命令Oracle 10gLinux
- CSS樣式案例(2)-製作一個簡單的登入介面CSS
- ROM簡單製作教程
- Linux字型安裝與簡單美化(實踐篇)(轉)Linux
- mac 下簡單安裝reidsMac
- 在Unix系統下用shell製作通用介面(轉)
- postgresql在windows平臺下的安裝 (轉)SQLWindows
- Mac下PostgreSQL的安裝與簡單使用MacSQL
- linux下amsn安裝(轉)Linux