[PC-BSD Pbi-dev] games/anki

Hakisho Nukama nukama at googlemail.com
Tue Nov 1 08:41:56 PDT 2011


2011/11/1 Kris Moore <kris at pcbsd.org>:
> On 10/31/2011 18:50, Hakisho Nukama wrote:
>> Hi,
>>
>> I've tried building my first PBI-Port, resulting in a 300Mb heavy PBI.
>>
>> Partly because math/py-numpy with FORTRAN=YES sets RUN_DEPENDS to gcc46.
>> And I'm not aware, if a run-time dependency is really needed.
>> There might be more unneeded stuff getting packed inside this PBI.
>> How to quickly enumerate which files are needed?
>>
>> Only excluding directories is laborious, why not specify
>> single/multiple ports for exclusion?
>> PBI_EXCLUDEPORT= (excluding single port)
>> PBI_EXCLUDEPORTS= (excluding port and its dependencies)
>>
>> Or should this be done inside scripts/post-portmake.sh?
>>
>> Extending PBI_EXCLUDEDIR with the ability to include some files /
>> directories could also be practical.
>> PBI_INCLUDEDIR= (including files / dir inside EXCLUDEDIR)
>> PBI_EXCLUDEDIR=
>>
>>
>
> Are you using the "pbi_makeport" command? It should auto-prune the build
> dependencies and leave you with only the required stuff. Still the idea
> of PBI_EXCLUDEPORT seems interesting, may have to add that in a future
> revision.
>

I'm using pbi_autobuild -c /usr/pbi/modules-devel -o /usr/pbi/pbiout-devel.
Which includes pbi_makeport.
And it does auto-prune (i.e. "Removing non-required port: autoconf-2.68").
BUILD/EXTRACT/FETCH/PATCH_DEPENDS can be pruned.

But if the real dependency hierarchy isn't correctly projected inside
FreeBSD-ports it will not prune these unnecessary ports.

If there is a unnecessary RUN_DEPENDS, or LIB_DEPENDS it is not
covered by your script.
Also cherry picking files which are needed from one big port isn't
possible with this pbi-system, yet.
Maybe we could use some procedure like this:

» copy PBI_INCLUDEDIR directories and files to stage dir
» run pkg_delete -f on PBI_EXCLUDEPORT
» run rm on PBI_EXCLUDEDIR
» populate stage dir


>>
>> Now some issues I encountered with games/anki.
>>
>> For "Japanese Support" there are no x11-fonts installed, Hiragana,
>> Katakana and Kanji needs fonts (maybe x11-fonts/cyberbit-ttfonts &
>> japanese/font-kochi )? Or should Base-I18N handle this?
>> Furthermore it needs japanse/py-mecab.
> The fonts should be installed with Base-I18N. I'll add those to it
> though for RC2. the py-mecab should be included with the PBI though.
>

All these dependencies are included inside the PBI, except for the fonts.

>> Pinyin Toolkit displays fonts with x11-fonts/wqy, but needs
>> www/py-beautifulsoup and devel/py-dateutil to run.
>>
>> Audio-support requires multimedia/mplayer to work.
>>
>> I've also included print/latex, but that wouldn't display all math formulas.
>>
>> If someone finds another dependency or a fix let me know.
>>
>>
>> Regards,
>> Hakisho Nukama
>>
>
> Do you have a module you can attach so we can test this? Most of these
> depends should be included with your PBI. Also, if the port uses python
> its possible that the scripts have the wrong #!/usr/local/bin/python
> line still at the top.
>
> --
> Kris Moore
> PC-BSD Software
> iXsystems
>
> _______________________________________________
> Pbi-dev mailing list
> Pbi-dev at lists.pcbsd.org
> http://lists.pcbsd.org/mailman/listinfo/pbi-dev
>


Sure, I've attached Anki.tar in the last mail.
Here it is: http://lists.pcbsd.org/pipermail/pbi-dev/attachments/20111031/d31d0e6c/attachment-0001.tar
tar -xf Anki.tar should extract this module inside ./games/anki.

And maybe the problem with {displaymath} is caused by the wrong
python-environment.

Regards,
Hakisho Nukama


More information about the Pbi-dev mailing list