使用deb 打包開發的postgres extension 另一種方法

已經寫過一個deb 包打包的方法,咱們同時也可使用dpkg-deb 命令html

安裝依賴工具包

  • 推薦安裝全點的
sudo apt-get install build-essential autoconf automake \
autotools-dev dh-make debhelper devscripts fakeroot \
xutils lintian pbuilder

項目結構

能夠參考github項目https://github.com/rongfengliang/nvl-pg-extensiongit

  • 項目代碼結構
├── DEBIAN
│ └── control
├── Makefile
├── README.md
├── nvlfunc--1.0.sql
├── nvlfunc.control
└── usr
    └── share
        └── postgresql
            └── 10
                └── extension
                    ├── nvlfunc--1.0.sql
                    └── nvlfunc.control
  • 說明
    DEBIAN/control 以及usr/ 目錄內容是核心

打包說明

  • control 文件
Package: nvl-pg-extension
Version: 0.2
Maintainer: dalongrong
Architecture: all
Description: nvl-pg-extension
  • deb 包內容
    手工建立 usr/share/postgresql/10/extension 目錄並添加deb包須要的文件,實際上須要的就是nvlfunc--1.0.sql nvlfunc.controlgithub

  • 打包sql

dpkg-deb --build nvl-pg-extension/

效果ubuntu

dpkg -i nvl-pg-extension.deb
(Reading database ... 115428 files and directories currently installed.)
Preparing to unpack nvl-pg-extension.deb ...
Unpacking nvl-pg-extension (0.2) over (0.2) ...
Setting up nvl-pg-extension (0.2) ...
Processing triggers for postgresql-common (199.pgdg18.04+1) ...
Building PostgreSQL dictionaries from installed myspell/hunspell packages...
Removing obsolete dictionary files:

效果工具

dpkg-deb --build nvl-pg-extension/
dpkg-deb: building package 'nvl-pg-extension' in 'nvl-pg-extension.deb'.
  • 安裝包
dpkg -i nvl-pg-extension.deb

說明

此種方法比較簡單,實際上control 文件能夠作好多事情,好比make build。。。,能夠參考下面的鏈接post

參考資料

https://coderwall.com/p/urkybq/how-to-create-debian-package-from-source
https://github.com/rongfengliang/nvl-pg-extension
http://www.king-foo.com/2011/11/creating-debianubuntu-deb-packages/
https://www.debian.org/doc/debian-policy/ch-controlfields.htmlui

相關文章
相關標籤/搜索