私はDebianパッケージをパッケージ化しています。このパッケージは、いくつかのソースコード/usr/src/bcm5974-4.2
とX構成ファイルのみをインストールするだけです/usr/share/X11/xorg.conf.d
。設定ファイルを正しく解凍しましたが、インストール/usr/src/bcm5974-4.2
ディレクトリがまったくないようです。
私のプロジェクトが利用可能ですここGitHubから。私はそれを使用していますフッ素PM非常にシンプルなMakefileを使用してパッケージ化します。
#!/usr/bin/make -f
PKG_NAME=bcm5974-4.2-dkms
PKG_VERSION=1.0.0
PKG_DESCRIPTION="Backported BCM-5974 module from kernel 4.2 including new MacBook hardware support."
MAINTAINER="NOPE"
all:
test -d build || mkdir build
fpm -f -s dir -t deb -n $(PKG_NAME) -v $(PKG_VERSION) -a all -p build/ \
-d dkms -d build-essential -d linux-headers-generic-lts-vivid \
-m $(MAINTAINER) --description $(PKG_DESCRIPTION) \
--post-install scripts/post-install.sh --pre-uninstall scripts/pre-uninstall.sh \
--post-uninstall scripts/post-uninstall.sh \
--deb-changelog CHANGELOG \
--exclude '.git*' usr/
これは私のための素晴らしい小さなDebianパッケージを作りますbuild/
:
$ dpkg-deb -c build/bcm5974-4.2-dkms_1.0.0_all.deb
drwx------ 0/0 0 2015-11-04 13:41 ./
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/share/
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/share/X11/
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/share/X11/xorg.conf.d/
-rw-rw-r-- 0/0 755 2015-11-04 13:40 ./usr/share/X11/xorg.conf.d/52-synaptics-bcm5974.conf
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/share/doc/
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/share/doc/bcm5974-4.2-dkms/
-rw-r--r-- 0/0 157 2015-11-04 13:41 ./usr/share/doc/bcm5974-4.2-dkms/changelog.Debian.gz
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/src/
drwxrwxr-x 0/0 0 2015-11-04 13:41 ./usr/src/bcm5974-4.2/
-rw-rw-r-- 0/0 237 2015-11-03 14:50 ./usr/src/bcm5974-4.2/Makefile
-rw-rw-r-- 0/0 32171 2015-11-03 14:50 ./usr/src/bcm5974-4.2/bcm5974.c
-rw-rw-r-- 0/0 246 2015-11-03 15:42 ./usr/src/bcm5974-4.2/dkms.conf
私が望むすべてがあるようですが、ソースをインストールしません/usr/src
。ソースを正しくインストールするにはどうすればよいですか/usr/src
?
答え1
私のプレインストール/インストール後/削除スクリプトに、コンテンツが間違った時間に削除されるバグがあることがわかりました。
例えばこれ:
rm -fr "/usr/src/$dkms_name-$dkms_version"
Debian prermフックはパッケージの更新中にも呼び出されるため、このスクリプトはインストールプロセス中にソースディレクトリを削除したようです。