wiki:waue/2009/0512

Version 6 (modified by waue, 16 years ago) (diff)

--

製作 Nutch deb

前言

  • 此篇要製作Nutch的deb包
  • 參考前一篇 Deb檔打包工作[前一篇參考Jazz打包方法]
  • 動機: Nutch 的安裝方法繁瑣,並且設定檔輸入錯誤則難以debug,常nutch執行完後才知道完全沒有抓到資料,卻又找不出問題在哪?因此若用deb包安裝完後,使用者簡單的再設定一下就可以上手。
  • 目的:安裝完此Nutch包,則Nutch 安裝完成,並且載入Nutch的設定檔
  • 最終目的:整合hadoop, nutch , tomcat 三個複雜的軟體
  • future work: 打包順利,下一步則設計nutch的簡易設定流程,如/opt/drbl/sbin/dcs

紀錄測試步驟

  • 預安裝到系統的哪個目錄很重要,事先要把檔案的配置拓樸規劃好,否則要改的檔案很多,容易錯亂
  • 事先產生自己的 gpg key ,在最後產生deb檔的時候會用到 (用gui的gpa產生比較理想),產生後用gpg --list-key |grep D/可以查到私鑰的八碼編碼,如:B35CE8C3
  • 似乎直接修改nutch-1.0下的conf內的檔案會被警告,因此建議不要動任何原本在nutch-1.0資料夾下的檔案,改寫在debian/postinst內

1. 找到並解壓縮 nutch-1.0.tar.gz

2. 在 nutch-1.0 資料夾執行 dh_make -f ../nutch_1.0.tar.gz

3. 將debian內的 rm *.ex *.EX dir 等檔案,並修改 rules , control

  • changelog
nutch (1.0-1) unstable; urgency=low

  * Initial release (Closes: #nnnn)  <nnnn is the bug number of your ITP>

 -- Wei-Yu Chen <waue0920@gmail.com>  Tue, 12 May 2009 11:15:51 +0800
  • compat

5
  • control

Source: nutch

Section:devel

Priority: extra

Maintainer: Wei-Yu Chen <waue0920@gmail.com>

Build-Depends: debhelper (>= 5)

Standards-Version: 3.7.2



Package: nutch

Architecture: any

Depends: ${shlibs:Depends}, ${misc:Depends}, sun-java6-jre, sun-java6-bin

Suggests: sun-java6-jdk, tomcat6

Description: Apache Nutch

   .

   Apache Nutch is a software that search and crawl internet.
  • copyright
    This package was debianized by Wei-Yu Chen <waue0920@gmail.com> on
    
    Tue, 12 May 2009 11:15:51 +0800.
    
    
    
    It was downloaded from <url://example.com>
    
    
    
    Upstream Author(s): 
    
    
    
        <put author's name and email here>
    
        <likewise for another author>
    
    
    
    Copyright: 
    
    
    
        <Copyright (C) YYYY Name OfAuthor>
    
        <likewise for another author>
    
    
    
    License:
    
    
    
        <Put the license of the package here indented by 4 spaces>
    
    
    
    The Debian packaging is (C) 2009, Wei-Yu Chen <waue0920@gmail.com> and
    
    is licensed under the GPL, see `/usr/share/common-licenses/GPL'.
    
    
    
    # Please also look if there are files or directories which have a
    
    # different copyright/license attached and list them here.
    
  • docs

CHANGES.txt

LICENSE.txt 

NOTICE.txt

README.txt

README.txt
  • rules
#!/usr/bin/make -f

export DH_VERBOSE=0



all:



install:

        dh_testdir

        dh_testroot

        dh_install -Xlicense.txt

        dh_installdocs

        dh_installchangelogs

        #dh_installexamples

        dh_compress

        dh_fixperms

        dh_installdeb

        dh_link

        dh_gencontrol

        dh_md5sums

        dh_builddeb



clean:

        dh_clean



binary: install



build:

binary-arch:

binary-indep:
}}} * changelog

{{{
nutch (1.0-1) unstable; urgency=low

  * Initial release (Closes: #nnnn)  <nnnn is the bug number of your ITP>

 -- Wei-Yu Chen <waue0920@gmail.com>  Tue, 12 May 2009 11:15:51 +0800
}}}

 * compat
 
{{{
5
}}}

 * control
 
{{{
Source: nutch

Section:devel

Priority: extra

Maintainer: Wei-Yu Chen <waue0920@gmail.com>

Build-Depends: debhelper (>= 5)

Standards-Version: 3.7.2



Package: nutch

Architecture: any

Depends: ${shlibs:Depends}, ${misc:Depends}, sun-java6-jre, sun-java6-bin

Suggests: sun-java6-jdk, tomcat6

Description: Apache Nutch

   .

   Apache Nutch is a software that search and crawl internet.
}}}

 * copyright
{{{
This package was debianized by Wei-Yu Chen <waue0920@gmail.com> on

Tue, 12 May 2009 11:15:51 +0800.



It was downloaded from <url://example.com>



Upstream Author(s): 



    <put author's name and email here>

    <likewise for another author>



Copyright: 



    <Copyright (C) YYYY Name OfAuthor>

    <likewise for another author>



License:



    <Put the license of the package here indented by 4 spaces>



The Debian packaging is (C) 2009, Wei-Yu Chen <waue0920@gmail.com> and

is licensed under the GPL, see `/usr/share/common-licenses/GPL'.



# Please also look if there are files or directories which have a

# different copyright/license attached and list them here.
}}}

 * docs
 
{{{
CHANGES.txt

LICENSE.txt 

NOTICE.txt

README.txt

README.txt
}}}

 * rules

{{{
#!/usr/bin/make -f

export DH_VERBOSE=0



all:



install:

        dh_testdir

        dh_testroot

        dh_install -Xlicense.txt

        dh_installdocs

        dh_installchangelogs

        #dh_installexamples

        dh_compress

        dh_fixperms

        dh_installdeb

        dh_link

        dh_gencontrol

        dh_md5sums

        dh_builddeb



clean:

        dh_clean



binary: install



build:

binary-arch:

binary-indep:
}}}

 == 4. 增加 nutch.[install,docs,links,postinst, postrm, prerm] 等檔 ==
 == 5. 在 nutch-1.0 資料夾內編輯Makefile檔 ==
 == 6. 執行 ''' sudo dpkg-buildpackage -rfakeroot -k0xB35CE8C3''' ==