Packaging/Binaries: Difference between revisions

imported>Steshaw
m Fix link to FHSUserEnv blog post
imported>Delan
use dpkg-deb -x rather than ar p | tar xJ; use dontConfigure + dontBuild + licenses.unfree; don’t use ${name} in fetchurl because most Debian packages are name_version_platform.deb
Line 15: Line 15:
$ wget https://web.archive.org/web/20170914112947/http://get.code-industry.net/public/master-pdf-editor-4.3.10_qt5.amd64.deb
$ wget https://web.archive.org/web/20170914112947/http://get.code-industry.net/public/master-pdf-editor-4.3.10_qt5.amd64.deb
# we extract data.tar.xz from the deb package and untar it
# we extract data.tar.xz from the deb package and untar it
$ ar p master-pdf-editor-4.3.10_qt5.amd64.deb data.tar.xz | tar xJ
$ dpkg-deb -x master-pdf-editor-4.3.10_qt5.amd64.deb .
ls opt/master-pdf-editor-4/
$ ls opt/master-pdf-editor-4/
fonts  license.txt      masterpdfeditor4.png  templates
fonts  license.txt      masterpdfeditor4.png  templates
lang  masterpdfeditor4  stamps
lang  masterpdfeditor4  stamps
Line 139: Line 139:


   src = fetchurl {
   src = fetchurl {
     url = "http://get.code-industry.net/public/${name}_qt5.amd64.deb";
     url = "http://get.code-industry.net/public/master-pdf-editor-${version}_qt5.amd64.deb";
     sha256 = "1z26qjhbiyz33rm7mp8ycgl5ka0v3v5lv5i5v0b5mx35arvx2zzy";
     sha256 = "1z26qjhbiyz33rm7mp8ycgl5ka0v3v5lv5i5v0b5mx35arvx2zzy";
   };
   };
   sourceRoot = ".";
   sourceRoot = ".";
   unpackCmd = ''
   unpackCmd = "dpkg-deb -x master-pdf-editor-${version}_qt5.amd64.deb .";
    ar p "$src" data.tar.xz | tar xJ
  '';


   buildPhase = ":"# nothing to build
   dontConfigure = true;
   dontBuild = true;


   installPhase = ''
   installPhase = ''
Line 177: Line 176:
     homepage = https://code-industry.net/masterpdfeditor/;
     homepage = https://code-industry.net/masterpdfeditor/;
     description = "a multifunctional PDF Editor";
     description = "a multifunctional PDF Editor";
     license = licenses.proprietary;
     license = licenses.unfree;
     platforms = platforms.linux;
     platforms = platforms.linux;
     maintainers = [ your_name ];
     maintainers = [ your_name ];