File debian.rules of Package asar
#!/usr/bin/make -f
# -*- makefile -*-
export SHELL=/bin/bash
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
export sourcedir=/usr/src/packages/SOURCES
export pkgdir_head=/usr/src/packages/BUILD/debian
export pkgdir=$(pkgdir_head)/tmp
export nodejs_sitelib=/usr/lib/node_modules
export VERSION=3.2.8
%:
echo
echo "----- Entering section % -----"
echo
dh $@
echo
echo "----- Exiting section % -----"
echo
override_dh_auto_configure:
echo
echo "--- Start override_dh_auto_configure: ---"
echo
echo "--- List files ---"
find /usr/src/packages
echo "--- End list files ---"
echo
npm rebuild --verbose --foreground-scripts
echo "--- End override_dh_auto_configure: ---"
echo
override_dh_auto_install:
echo
echo "--- Start override_after_dh_auto_install: ---"
echo
mkdir -pv $(pkgdir)$(nodejs_sitelib)/@electron
mkdir -pv $(pkgdir)/usr/bin
mkdir -pv $(pkgdir)/usr/lib/node_modules/@electron/asar
# The following command not possible on Debian, Ubuntu:
#cp -vlr . $(pkgdir)$(nodejs_sitelib)/@electron/asar
rsync -av --progress . $(pkgdir)$(nodejs_sitelib)/@electron/asar --exclude debian
#cp -vl .* $(pkgdir)$(nodejs_sitelib)/@electron/asar 2>/dev/null
#cp -vl * $(pkgdir)$(nodejs_sitelib)/@electron/asar 2>/dev/null
# Manual copying for Debian, Ubuntu:
#mkdir -pv $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vlr .circleci/ $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl .gitattributes $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vlr .github/ $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl .gitignore $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl .npmignore $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl .releaserc.json $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl CHANGELOG.md $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl LICENSE.md $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl README.md $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vlr bin/ $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vlr lib/ $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vlr node_modules/ $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl package.json $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl snapcraft.yaml $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vlr test/ $(pkgdir)$(nodejs_sitelib)/@electron/asar/
#cp -vl yarn.lock $(pkgdir)$(nodejs_sitelib)/@electron/asar/
ln -srv $(pkgdir)$(nodejs_sitelib)/@electron/asar/bin/asar.js $(pkgdir)/usr/bin/asar
# symlink old package name
# The following syntax generates error on Debian, Ubuntu:
# ln -srv $(pkgdir)$(nodejs_sitelib)/{@electron/,}asar
ln -srv $(pkgdir)$(nodejs_sitelib)/@electron/asar $(pkgdir)$(nodejs_sitelib)/asar
#fix shebang
sed -i '1s/env //' $(pkgdir)$(nodejs_sitelib)/@electron/asar/bin/asar.js
cd $(pkgdir)$(nodejs_sitelib)/asar; \
# Correct bogus version in package.json \
jq -cj '.version="$(VERSION)"' package.json > new; \
mv -v new package.json; \
#Remove development garbage \
find -name example -print0 |xargs -r0 -- rm -rvf; \
find -name test -print0 |xargs -r0 -- rm -rvf; \
find -name typings -print0 |xargs -r0 -- rm -rvf; \
find -name @types -print0 |xargs -r0 -- rm -rvf; \
find -name .github -print0 |xargs -r0 -- rm -rvf; \
find -name .circleci -print0 |xargs -r0 -- rm -rvf; \
find -name '*.md' -type f -print -delete; \
find -name '*.markdown' -type f -print -delete; \
find -name '*.ts' -type f -print -delete; \
find -name '.*.yml' -type f -print -delete; \
find -name '.*ignore' -type f -print -delete; \
find -name 'snapcraft*' -type f -print -delete; \
find -name '.git*' -type f -print -delete; \
find -name yarn.lock -type f -print -delete; \
find -name '.yarn*' -type f -print -delete; \
find -name '.releaserc*' -type f -print -delete
echo
echo "--- List files ---"
find $(pkgdir)
echo "--- End list files ---"
echo
echo "--- End override_dh_auto_install: ---"
echo
override_dh_fixperms:
dh_fixperms
find debian -type f -name 'asar.js' -exec chmod 0755 {} +
find debian -type l -name 'asar' -exec chmod 0755 {} +