Reply
 
Thread Tools Display Modes
  #1  
Old 09-25-2010, 11:52 PM
thnewguy thnewguy is offline
Senior Member
 
Join Date: May 2010
Posts: 797
Thanks: 3
Thanked 54 Times in 43 Posts
Default Automated PBI module creation
I've mentioned this a few times on the pbi-dev mailing list, but I wanted to make others aware of this too.

Recently I have been working on a way to automate the process of taking a FreeBSD port and making it into a PBI module, which can be submitted to the PBIdir repository. There is still some work to do, but the program has reached the point where it can successfully create a PBI module for simple ports.

A simple project website has been set up where you can grab a copy of the PBI module creator and submit feedback concerning what does or does not work for you. The site is here:
http://makeapbi.sourceforge.net/index.php

And there are instructions on installing and running the program here:
http://makeapbi.sourceforge.net/doc/README

It is still in the early stages and it's important to look over and test the modules, but I have found it greatly speeds up the process of making a module. Eventually I hope to reach the point where new PBI modules can be made a few dozen at a time with minimal checking from the user.
Reply With Quote
  #2  
Old 09-26-2010, 01:35 AM
Fatmice Fatmice is offline
Senior Member
 
Join Date: Feb 2008
Location: US
Posts: 888
Thanks: 0
Thanked 1 Time in 1 Post
Default
Worthy of Sticky
__________________
|================================================= =====|
|Please search the forum prior to posting. Intellectual laziness is not nice. | (Does not apply to non-offenders =))
|================================================= =====|
Reply With Quote
  #3  
Old 09-27-2010, 03:45 PM
kmoore134's Avatar
kmoore134 kmoore134 is offline
Administrator
 
Join Date: May 2005
Location: Knoxville, TN
Posts: 2,568
Thanks: 0
Thanked 163 Times in 127 Posts
Default Automated PBI module creation
I think when you get your hands on the new PBI 9.x format stuff, this
may be even more functional than before. The new module format requires
less settings now, and really most ports can be built with just the
basic info, for a desktop icon, any specific make options, etc.
__________________
----
Kris Moore
PC-BSD Founder
Reply With Quote
  #4  
Old 09-27-2010, 08:10 PM
thnewguy thnewguy is offline
Senior Member
 
Join Date: May 2010
Posts: 797
Thanks: 3
Thanked 54 Times in 43 Posts
Default
Will the two module formats be compatible? I mean if I make a module for 8.x, will it also build as a 9.x module? Or will there have to be two different modules created to support both branches?
Reply With Quote
  #5  
Old 09-29-2010, 12:08 AM
thnewguy thnewguy is offline
Senior Member
 
Join Date: May 2010
Posts: 797
Thanks: 3
Thanked 54 Times in 43 Posts
Default
Just to clear up a point of confusion. The Make-a-PBI program takes a port and makes a PBI module from it. It doesn’t actually create a PBI package. It’s a sort of a stepping stone between ports and PBIs. The process generally goes like this:

1. Find a port
2. Make a PBI module (framework) from the port
3. Turn the framework into a functional PBI.

Make-a-PBI automates step 2. It doesn’t actually create an installable PBI package. For that task there are already great tools like the PBI Creator and PBI Builder, available at pbidir.com
Reply With Quote
  #6  
Old 09-29-2010, 03:05 PM
kmoore134's Avatar
kmoore134 kmoore134 is offline
Administrator
 
Join Date: May 2005
Location: Knoxville, TN
Posts: 2,568
Thanks: 0
Thanked 163 Times in 127 Posts
Default Automated PBI module creation
The module format will not be the same, but they will share some
similarities

However, to account for this, and to make sure we don't waste time
re-writing old modules, I've written a conversion tool, which takes an
old module, and converts it to the new format automatically:

The tool, along with two examples of the new module format are both
available here:

http://trac.pcbsd.org/browser/pcbsd/...odule-examples

Once the 9.x format is finalized, which should be somewhat soon, we'll
begin the process of converting old 7/8 modules into the 9 tree, that
way we can start doing 9 builds for testing.
__________________
----
Kris Moore
PC-BSD Founder
Reply With Quote
  #7  
Old 10-02-2010, 06:28 PM
malco_2001 malco_2001 is offline
Senior Member
 
Join Date: Aug 2010
Posts: 134
Thanks: 7
Thanked 34 Times in 26 Posts
Default
Is this tool building in the new pbi 9 format? I tested it by building /usr/ports/deskutils/tomboy and I noticed that the directory structure inside the pbi build directory appears more similar to the pbi 9 examples than they do existing pbi's under /Programs
Reply With Quote
  #8  
Old 10-02-2010, 06:53 PM
thnewguy thnewguy is offline
Senior Member
 
Join Date: May 2010
Posts: 797
Thanks: 3
Thanked 54 Times in 43 Posts
Default
Make-a-PBI builds modules in the 8.x format. I am planning to support the PBI 9 format in a later release.
Reply With Quote
  #9  
Old 11-30-2010, 09:29 PM
thnewguy thnewguy is offline
Senior Member
 
Join Date: May 2010
Posts: 797
Thanks: 3
Thanked 54 Times in 43 Posts
Default
I've uploaded a new version of Make-A-PBI which will build both version 8 modules and version 9 modules. The version 9 support is still in its early stages, but I think it'll work on most ports. You can get more details here:
http://makeapbi.sourceforge.net/news.php
Reply With Quote
  #10  
Old 04-15-2011, 02:33 PM
thnewguy thnewguy is offline
Senior Member
 
Join Date: May 2010
Posts: 797
Thanks: 3
Thanked 54 Times in 43 Posts
Default
I've uploaded a new version of Make-A-PBI. This version, 1.0, has some important improvements. The big one being Make-A-PBI can now attempt to make a PBI module without building/installing the associated port. This means that Make-A-PBI can run in seconds, rather than over several minutes/hours, and the program no longer needs to be run as root.

The building/installing options are still available for people who want to make sure their modules will build properly, but for making quick-n-dirty modules we can use:

pbimaker -8 -s /usr/ports/category/portname

Which will make a PBI (version 8) port. We can make version 9 modules with

pbimaker -9 -s /usr/ports/cateogry/portname

Often times port icons are hard to find due to naming conventions, we can force the program to use a specific icon name with

pbimaker -8 -s -b /path/to/default/icon /usr/ports/category/portname

Make-A-PBI can be downloaded from here:
http://makeapbi.sourceforge.net/news.php

And the install/usage instructions can be found here:
http://makeapbi.sourceforge.net/doc/README
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 09:57 PM.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.

Copyright 2005-2010, The PC-BSD Project. PC-BSD and the PC-BSD logo are registered trademarks of iXsystems.
All other content is freely available for sharing under the terms of the Creative Commons Attribution License.