Menu

Packaging binary version of fidocadj for linux

Michele
2014-11-14
2014-11-20
  • Michele

    Michele - 2014-11-14

    Hi at all,

    I've created a package for Slackware Linux that is downloadable at this locations

    http://repository.slacky.eu/slackware64-14.1/graphic/fidocadj/0.24.4/
    http://repository.slacky.eu/slackware-14.1/graphic/fidocadj/0.24.4/

    and this is the source shell script

    http://repository.slacky.eu/slackware64-14.1/graphic/fidocadj/0.24.4/src/fidocadj.SlackBuild

    I want to suggest some improvements to make the process easier:

    • the binary jar is not versioned and this is a problem if for some reason we need an old version of fidocadj
    • the installer for Linux does not have the ability to install the files into a fake-root. This makes impossible to create the package without having to really install the files.

    Without the versioned binary jar, I decided to compile fidocadj from source and it would be nice to have also the source instead of having to retrieve it from subversion.

    In my opinion the best way to organize distribution files under SourceForge is the following

    0.24.4+
    +-- fidocadj-0.24.4-binary.zip
    +-- fidocadj-0.24.4-binary.msi
    +-- fidocadj-0.24.4-binary.dmg
    +-- fidocadj-0.24.4-source.zip
    0.24.3+
    +-- fidocadj-0.24.3-binary.zip
    +-- fidocadj-0.24.3-binary.msi
    +-- fidocadj-0.24.3-binary.dmg
    +-- fidocadj-0.24.3-source.zip

    cheers
    Michele

     
  • Simo

    Simo - 2014-11-14

    Nice job, it's a pleasure to see a new Slack fan here..

    PS: I am also a slacky.eu member. :D

     
    • Michele

      Michele - 2014-11-14

      World is tiny :)
      On slacky.eu I'm miklos, and you?!?

       
  • Davide Bucci

    Davide Bucci - 2014-11-15

    Dear Michele,
    welcome!
    Thanks very much for the scrips. I imagine that FidoCadJ is contained in the txz file, but the jar file is about 500 KiB, whereas the txz file weighs about 3.4 MiB. What has been added? The Java runtime? The manuals?
    For what concers the naming on SF, I will think about it. Actually, one of the advantages of the current naming convention is that we must not change every link in the http://fidocadj.sourceforge.net webpage (operation which is time consuming, tedious and error-prone), each time a new version of FidoCadJ is out.
    Also, there are other webpages containing some direct links, which I prefer not to break.
    It is a good idea to provide a snapshot of the source files, but access to the svn repository is not enough?

    Cheers,
    D.

     
  • Michele

    Michele - 2014-11-16

    Hi Davide,

    the package contains also icons, manuals and other stuffs used by many desktop environment for integration with application's menu and file managers(like KDE, Gnome, Mate etc etc etc)
    I haven't write nothing, all the files are in the fidocadj repository.
    For this reason I think that only the jar it's not enough to use fidocadj properly on linux.

    Regarding source code, downloading from subversion is a waste of time and space because subversion downloads all project history and I've notice also, that on repository there are windows binaries, apple libraries etc etc etc

    But feel free to ignore my suggestions if you think that it's hard for you to mantain, because the package it's not so hard to build at this moment.

    Last thing, build scripts compile fidocaj for java 1.5, but everywhere it's reported that must have java 1.7

    Cheers,
    Michele

     
  • Davide Bucci

    Davide Bucci - 2014-11-16

    Dear Michele,
    now you have write access on the repository, so welcome among the FidoCadJ developers! :-)
    If you have time, can you please fix the issue about the compile script? Effectively, it should specify Java 1.7.
    If you want you might also add the Slackware scrips or, even better, everything needed to build them in a sub dir of trunk/OSes/linux/
    If you do some svn commits, try to make sort that they are easy to review (not too few and not too much, I can review more or less 150 loc per day) and do not forget to put a message for the log.
    If you want to work on the Java source code, please discuss what you want to do before starting your work, it is important to keep things coherent.

    Concerning the sources tarball, I consider "sources" everything which is in trunk, so a sources archive would not contain only the Java files.

    Cheers,

    Davide

     
  • Michele

    Michele - 2014-11-19

    Hi Davide,

    I've fixed build script and one other minor bug on the file

    /OSes/linux/fake-root/usr/share/applications/fidocadj.desktop

    Do you prefer two separate commits!?!?
    There is some naming convention for commit's description like

    Linux: fix .desktop file
    Build: compile using java 7

    Cheers,
    Michele

     
  • Davide Bucci

    Davide Bucci - 2014-11-19

    Hi Michele,
    thank you so much!
    A single commit will be OK, it will be simpler to have a look at.
    The description is also OK.

    Thumbs up: go with the commit!

    Cheers,

    Davide

     
  • Michele

    Michele - 2014-11-19

    Done :)

    Cheers

     
  • Davide Bucci

    Davide Bucci - 2014-11-19

    Dear Michele,
    I saw your commit. Perfect!

    Cheers,

    Davide

     
  • Michele

    Michele - 2014-11-20

    Davide,

    with Slackware we must often convert some binary packages from deb/rpm format into txz then I have knowledge of internal package structure of deb and rpm.
    If you agree I want to write a shell script that package fidocadj in this formats, but keep in mind that I don't write legal deb or rpm build scripts, because in that case I need a working debian or fedora machine and I don't have time for this.
    I will write a script that potentially can run on every unix like SO (like your MacOsx) with minimal dependencies (program needed are 'ar', 'tar', 'md5sum')

    Let me know.
    Cheers

    EDIT: packages builted with this script will never be included in official repository of, for example, debian because binary package is well constructed, but build script not.
    If you think that this script can be useful the resulting package must be uploaded on SF download's section

     

    Last edit: Michele 2014-11-20
  • Davide Bucci

    Davide Bucci - 2014-11-20

    Dear Michele,
    in principle, I do not see any difficulty in including some packaging scripts in the source code repository.
    In fact, you might create OSes/linux/slackware and put everything you need there.
    It would be a good thing if the scripts can be run on MacOSX, since it will be easier to review them from my point of view.

    Concerning the distribution, normally, each time a new "stable" version is ready, I do the following things:

    I can not work on the distribution on other operating systems, apart the fact that I try to review the scripts etc to see if I spot errors.

    For what concerns the Windows installation bundle, I ask for help and I publish it once I have at least one positive report from someone who tested it.
    So, if you want to provide the executable package for Slackware, it will be perfect: I will be happy to publish it in https://sourceforge.net/projects/fidocadj/files/ and mention it in the website, once it has been verified by someone which can install it.

    Cheers,

    D.

     
  • Simo

    Simo - 2014-11-20

    I think we could write a package installer compatible for every Linux distro.
    Why not ?

     
  • Davide Bucci

    Davide Bucci - 2014-11-20

    Dear Simo,
    in fact, there are some install scripts which are more or less distro-independant.
    Have a look there:

    OSes/linux/Distro-Independant

    We discussed about that with Bart and Dante:

    https://sourceforge.net/p/fidocadj/discussion/997486/thread/79b643b5/?page=0

    However, I think that having some distribution specific bundles can help, so Michele's work about Slackware is useful. In fact, it does seem that the downloader script is not very much used:

    https://sourceforge.net/projects/fidocadj/files/

    (in this moment, it has been downloaded only 5 times in 7 days, to be compared with the 293 for the Windows bundle).
    Maybe the low number of downloads is also the result of a lack of knowledge of FidoCadJ in the Linux community?

    Cheers,

    Davide

     
  • Michele

    Michele - 2014-11-20

    I think that a specific package could be better in order to try to increase fidocadj popularity on linux world.
    Writing a script for this it's not an hard work because fidocadj, like any other java programs, can be compiled on any system with a valid java compiler and you are almost sure that the jar produced work well everywhere.
    Take a look, for example, at the debian package structure

    http://tldp.org/HOWTO/Debian-Binary-Package-Building-HOWTO/x60.html

    it's not more than an archive file, with obviously specific structure.

    I will try to create something that can help Davide, and generally fidocadj's contributors, to build packages for most distros out of there (tipically .deb .rpm and .txz) on its, for example, Mac Osx

    Cheers

     

    Last edit: Michele 2014-11-20

Anonymous
Anonymous

Add attachments
Cancel