Need to get out more

Dang it I’ve just been examining my to do list…. I really need to get out more, chase a few lushious babes across the beach e.t.c. Dang it I can’t even remember how many years its been since I’ve gone to the beach and I grew up in south Florida !

Oh well time to play Spider Solitare and some KDE Games.

XML

Ok so sue me I took a day off 😛

Set up the mkXML function to create our *.desktop files which is a good thing because it shows me I have more testing to do with them. As well as editing the getInput function to make a few changes namely.

Should we run the app in a terminal ?
Do not create link option
Test a few entries in the file
Set MIME type(s?), using a real MIME not a *.ext !

I’ve added “/usr/ports/packages/All/” and the current directory to where to look for things entered on the CLI so hopefully we could call it as “program packageToAdd.tbz optionalBatchJobFile” and find it. I’ve set the foot holder code for the fkBuild function which makes the PBI file. Thats going to be a tough thing to do, hopefully Tim will be able to help me there. I’ve set up our little main loop to breach off into fkBuild + a comment that it should never return to our main loop of events. Because once fkBuild and sub-routines are finished it’s supposed to exit the program !

I need to add stuff to the getLibs function for binary hunting. Because what I want is for the user to be able to enter the binaries name as one would to run it. Which is easier on Joe Newbie and faster for a CLI without tab completion. Since getLibs relaies on the information gathered from getInput. We’ll then have to test it logically checking to see if it’s located in any of the usual spots in the path. Once we find where it is we append that and pass it to the section that actually gets the libs. If it’s some thing not in the standard path the user will have to give us full path which we will need to strip off at the start of mkXML.

Line of execution is pretty simple so far, I’ll worry about the world of Object Oriented Programming another time – like after this works. Every thing is done in seperated routines rather then a huge main function.

mkHome - prepair programs projects directory (/usr/local/Projects) if it does not exist.
mkProject - make the current projects directory if does not exist. Then copy our pkg over to the project directory.
mainLoop - ask how many K-Menu entries we need to make and loop that many times, then call fkBuild.
getInput - get all the information needed to write the *.desktop files and any script details
getLibs - gather all the libraries required from the program given to us by getInput
mkXML - using the data from getInput make our *.desktop file
fkBuild - make the *.pbi file

Of course its not done yet so its not all working yet. So far it looks quite promising as long as in the end I can make a working pbi file. I need to add greater error checking, path stripper code for getLibs, strighten up getInput for a few extras and colate with the mkXML routine. I don’t know if XML is the right word for the file style but hey its short, discriptive, and bloody close enough! I also need to get the stuff fixed up for creating the PBI.*.sh files.

To day I rest, let the stream roll off. I’ve mostly kept my self busy as a beaver to get my work done and also not blow up over at www.pcbsd.org

I need to get the code to handle swaping the data out to file thus creating the *.desktop files to day. I’m moving it to a mkXML function for neatnesses sake even though it’s likely to need tweaks. The only bad thing is I can’t do the multi-language fields of it and I’m sure as heck not writing a translator to use as a filter app!

Also got to get the stuff setup before going back to work. It’s nice to be able to rest for a few days, even if I’ve more or less been in front of the computer tinkering on some thing for 2 or 3 days stright. BF2 is also good for a break.

For some very od reason I’m having an urge to create a GNU/Linux distro… Console based Live CD /w plenty of rescue stuff, optional X startup /w a minimal WM and an install script then setup the system for install.

Working on my German a few words at a time too.

Well I got most of the interective mode setup, actually swapping the data out to file is next. Not sure where the fkBuild() function will lead but it won’t end up back into the mainLoop (hence the ForK prefix). After the thing runs assuming I ever sort out the PBI generation part it self things look good. The final thing to do will be setting it up to tell weather it is in batch or interactive modes. What I’m thinking is simple

appname /usr/ports/packages/All/package.tbz
Runs it in interactive mode, user has to set the data to create a suitable .desktop file.

appname /usr/ports/packages/All/package.tbz ~/datafile
Run as a batch job reading stuff from dtafile in order to process the job.

Thanks to dropping into #kde I found out basically how to manipulate the K-Menu manually. I’m sure it’s simular for making Desktop Icons because of the files. I’d just have to figure out how to set it up correctly not concerned with it though.

Once it’s complete and if ever fully functional it shouldn’t be to hard for a GUI program to work around its batch mode. That infernal QT Designer is still more then I’m up to handling without reading the manual yet.

AutoPBI

Well I think it’s about 0300 hard to tell since I’ve been toying with my laptops time systems hehe. I’ve been working on a little gizmo to try and auto-create a PBI so far it’s going well. I need to sort out how to setup the scripts used for installing the PBI. At the most basic level it shouldn’t be that hard but I’m faced with a few design desisons.

Should I keep it to a srictly functionally terse or opt for an easier UI. Really I care more for solid implementations then flashy stuff. A few things I need to get done is making short work of the PBI.SetupScript.sh and PBI.RemoveScript.Sh files auto-generation. I’m not sure what to put in it really. I know I want to prepair the pkg_add and the binaries in it before offering a direct edit. A quick way to add “events” per say, i.e. an easy way of setting up dialog/kdialogs for use would be nice but that can wait awhile lol. If Kris Moore can anwser me how to tell in the script is running in text mode or normal (gui) mode. I could setup dialogs for PBI Text installs and kdialogs for normal click-n-run style.

I’ve got the code working to get basic libraries auto-populated but theres no support for auto-magic setup with GTK+ P.I.T.A. PBI Libbing yet and I need to start the code to quickly run each binary through it. I’m hoping to deside more on the UI before thats totally finished. I may be a newbie but I’m trying to keep each section very self contained and a good managible size as much as I can. I remember reading through some source code files a few K lines of C Code long and getting tired of reading after the first thousand or so lines. So I kinda learned keep it tight when ever I can. I’ve not figured out how to “create” the PBI yet. If possible I’d rather like to bypass PBI Creator all together and see if theres any way to manually setup stuff on the K-Menu e.t.c. Has to be some way since PBI do it as they are.

I remember there was a thing posted on how to make a PBI file for GNU/Linux so I’ll take a look at that when I have it ready to “build” some thing. I’m sure if I worked out how to create a PBC file ether using the Build-A-Function called pipes, filters and redirection or perl/ruby I could make it wrap around PBICreators CLI mode but .. Dunno yet.

What I want this to be, is a simple way to get started building the PBI. I’m not yet desided weather to have the port build from within the program or for a simpler design make one have to do a make package first or not. I also need to test to see how much find, copy, link would be the normal neccessity to setup after the package. Such as prepairing the manpages/configdir stuff. I’m not usre how to work out nabbing the man pages since they could be near any where depending on the app and won’t always be limited to the binaries names.

Really I don’t think I’ve had this much fun in a good while.

More PBI

Well I’ve E-Mailed Kris Moore for some info, wonder what I may find out. Depending on the results it might allow me to make for a more flexible method of dealing with my PBI.*sh files.

I also might have a few ideas for making a “automatic” PBI creation tool that I will need to toy around with later. Not 100% sure how well it would work yet.

I suppose, if ya can’t beat them join’em. Then remember if it blows up this wasn’t my idea !

PBI Systems

Well tis time to plan for war or for peace. I can only see two roads before me.
In a funky branch of science where psychology and history meet at a decision
point that breaks into two possible futures. At first I didn’t know which to to
choose but then it just popp’d in there. A man has great capacity for both good
or evil, it’s this choice that splits that destiny apart.

While one could harbor malice towards some thing is normal for a human, I have
none to use. I’ve long rejected such ideas in favor of ones that work. So, I
see that I must take the option that poses the least threat.

On one road, I see the changes to the PBI system to be used (read abused).
Using both volume and redundant checks of quality control push the PBI system
for all it’s worth till it ether busts or grows strong.

To the other, adopt to it and fight for its growth. Well ether way I’m going to
raise all kinds of bloody screaming if quality control standards are not
maintained. If Pkg_add becomes the John Doe of the PBI word proper auditing and
quality management is required. The number of times pkg_add PBI have leaked
through testing even when it was strictly a case for “pkg_add -f pkg.tbz” ==
You will be skinned alive being the accepted Community/Developer standard. Even
PC-BSD Developers would occasionally bend this rule and bypass auditing (or
worse…). SO what the heck, why not go with it.

This is a change I hoped to see come with a much stronger infrastructure and a
larger user base. Hopefully one done after proper documentation was ever
created. To be honest PBI documentation is kinda, uhhh scratched out? Yet how
does this change come to us ? By a loss of principals – it wasn’t after people
complained. It wasn’t after user after user put up requests on the wish list
only to be mostly ignored. It wasn’t after people yelled for a more traditional
approach, it wasn’t after die hard FreeBSD people turned there noses at the
idea. It wasn’t that a flaw was found in an imperfect system and a fix was
needed. It wasn’t that as it is the PBI system couldn’t work. It’s simply that
they would rather have it done NOW then later. Why work to make some thing work
the way it was supposed to? When you can just change the rules to match your
hand of cards ? I’m sorry but thats the way I feel – I don’t mean to accuse any
one and don’t.

We can now use pkg_add in PBI creation at a very small level because it’s the
easy solution. When a problem of commercial importance chopped up. Well excuse
me and my big fat Johnny Reb ass but I’m starting to agree with a few FreeBSD
sys-admins. A clean, functional, elegant design should be the end result. Not
some thing hacked together with chewing gum and cloths pins. Even after public
debate about the similar issues they didn’t care – they get a problem getting a
commercial app to abide by it and they change the rules. When I had “offically”
left working on any PBI I did so seeing a system showing signs of reform, one I
knew would stand. Now I see it caving in on it self.

Ok so we have to live with pkg_add app PBI full of libs not added ok now we need to think here. The pkg_add can only be the main app well if we draw that line very easy at cd /usr/ports/cat/app && make package && cd /usr/local/Projects/PBI && mkdir app && cp /usr/ports/Packages/All/app.tbz ./

Then we need to check this package to make sure it only contains libs unique to
the project or else fool around /w it and the +* files to make a new package to
force or risk breaking some thing. Ok thats good enough but what if we have
some problems loading a Lib out of /Programs/$1/libs at run time ? OK well
since the PC-BSD Devs say it’s ok to do a pkg_add of the main app. Why don’t we
just move that into it’s own PBI and pkg_add that after making the user install
it 😛 Heck The lead Developer included a handful of Linux RPMs to make one of
his PBI work since it was a Linux program any way (which was not pkg_add’d IIRC)

Now we have a simple case here – We need to test if the pkg is all ready
installed abort it with an error to the user. When removing it it would be nice
if we could do a fast check to see if any thing depends on the package, such as
user installed ports !!!!!!!!!!!!!!!!!!!!!!!!!! und abort the uninstall
accordingly. I.e. Make sure for totally clean install/removal of pkg’s not just
force them in/out with a sledge hammer like a dumb fuku! Trust me I’ve seen it
a lot of times. It would also be nice if the user updated a PBI using ports if
we could just *remove* things from the PBI Uninstall menu.

Ok so that sorts that now. What about docs on PBI creation ? We got a few how
to make XYZ FAQs on the FAQ. Other wise it’s horse dung. For example one of the
best tutorials says to tarball stuff inside the PBI which is basically a
compressed archive all ready. Kris Moore tells me not to do that – any one see
that in documentation ? HELL NOOOO!!! So we see a few PBI using it that
followed that tutorial. I’m oh most afraid to go to the SVN if you see my
train of thought here.

I see a possible return to PBI Development if I’m made to live in this words
new concept of PBI. There was only a few reasons I never jumped off the boat
and swam for FreeBSD shore after learning I could live without PC-BSD. I saw
PC-BSD as the brightest hope for the future, not only for Unix on a Desktop but
as a real operating system, world class. That was one of the reasons I didn’t
just drop off the scene. So here I am for better or worse it seems.

I think I may start compiling a list of ports to prepare PBI’s for in this “new
order” try to get a mass production thing going once I have time to get every
thing ready op. Then let operation Justice-Rainbow commence, details classified
with only beneficial results for PC-BSD included. I’m not sure yet for this.

Do I really want PC-BSD to succeed in every way possible? Yes but can I support
a project I feel has issues with ethical, moral, and principal concerns I’m not
sure. Well ether way I hope www.pbidir.com will see so many PBI coming in they
won’t know what to do with, I only hope they are the right kind. The good kind
made with love and craftsmanship – not shoddy pieces of crap that brings a
Graphical RPM Installer into this new world. Some people know what my feelings
are about RPMs..

Sigh, even though I know I must follow the light course I think they would
deserve it if I took the darker path. I just can’t willingly do that….
(censored). I’ve got a lot on my plate right now. I’ve got studies in 6
languages + html/css, I want to install lighttpd/mysql/php on my FreeBSD box so
I can study PHP. I still have not set up my printer. I’ve got to redo a history
test that the USPS lost, least it wasn’t my final (upper 90s pass). I gotta do
a Biology course *joy*. I’d love to just set to work on what I want to do. I’d
love to just dive in to things and create the program I know I can do given the
right time… A strong language reference and documentation database and
inhaling a few dozen manuals, learning ether QT or GTK based GUI development.
PBI it and vola oh how I wish I had the time… With a week off if I didn’t
have School I could put a nice dent into a few things that really need them
done. C and Ruby are my friends, it’s time I get to know them better and have
a go with QT me thinks.

One mad Spider !

For the first time, the PC-BSD project has irk’d the wrong button on my panel. In what appears to be issues with commerical software being able to abide the same quality standards and “short-commings” of the PBI system that joe packager has to deal with. Pkg_add of the main program is now allowed in a PBI. So I guess if I wanted to make a PBI of Xine I could force pkg_add Xine and no one would care weather or not that pkg_add’d the xine lib(s) used in Kaffine and then deleted them when forcing a pkg_delete ! (Still in the hypo-theory field here). Still I find this un acceptible. Such a change should have been made all of 3 weeks after PBI’s started installing into /Programs instead of another area prefixed with My 🙂

In short they have had a lot of time to deside this but they do it now why ? To me it feels as if it’s because compiled Win4BSD can’t run that way or because with the PBI system as it is (now was) breaks it. Win4BSD does not look open source to me and I have no other problem with paying for such a program. If the program needs to be changed internally to run on PC-BSD as a PBI *They should do the Frigging work*. If it can’t just work right with the way a PBI installed program is supposed to because of the PBI system rather then the program. * PC-BSD is flibbing late about making changs to fix this ! *. In short I’m very annoyed that it looks as if a commercial project can make an Open Source Operating System bow down to cater to it in order to put their product on the offical PBI directory with a stamp of approval. It would seem Win4BSD Distribute the product only in binary form. The Win4BSD people all ready offer the Schweine of a PBI for download on their own mirror. Why should PC-BSD bend over backwards to get a pkg_add frontend PBI of a commerical product on offical mirrors. It makes no sense !!

PBI were ment to be easy to install/uninstall and not touch the system directly. Allowing oen to uss a pkg_add of say konversation but not adding qt/kde pkg’s via the PBI is one thing if done right. You also have to remove any lib’s from the pkg used in the PBI before using it e.t.c. to make sure which is another level of work on a PBI Developer. * a frigging nightmare for PBI testers as well if they ever forget to read the scripts before installing *. If you want a front end to pkg_add theres no reason to PBI it. Just use a KDialog ina install.sh file…

I’ve Contemplated removing all of my PBI installs (reinstall via ports) and demanding my XMMS, Megamek, and Blackbox+BBKeys+BBConf+BBPager+Docker PBIs removed from pbidir but what good would any of it do ? I’m only a PC-BSD user, a mighty annoyed one at that. I’m not the kind of person to “jump ship” when stung but this irks me. I’ve all ready tried to distance my self from PBI Development for my own issues but this is beyond issue. How to wage a war for principals slain by it’s founders? I’m not sure yet… Find a way I very well may. All I can say is I learned a very good phrase in German to day for what I have to say to them.

/* retracted */

This is not the last time my voice will speak.

BPM

I’ve been busy doing a few things with my laptops installed PBI’s today, got a chance to try out BPM. That is the Bsd Ports Manipulator. It’s a development build and warns you as such on start up.

During the install it prompts you if you want to install the ports collection, I think it should only ask if you have not installed ports but it asked me any way. Reminds me I need to cvsup later. One fatal flaw in the BPM PBIs script is that it does not work on the PC-BSD 1.3Beta which changed from cvsup to csup. I posted on the forums about it. If some one needs to install the ports tree they can use the PC-BSD System program to fetch ports (via the “tasks” tab). K-Menu->Settings->System Administration if you care. There is also the portsnap method and CVSUP/CSUP for command line usage.

portsnap fetch extract

OR

cvsup -L 2 /root/ports-supfile

csup seems to be the same as cvsup on basic usuage aside from the name. On regular FreeBSD systems you can use a copy of the supfile in /usr/share/examples/cvsup/ if you set the mirror. PC-BSD prepairs you one for ports and one for system sources but theres more in that ^^ directory. Back to BPM

BPM offers us no configuration that I can find and seems to use a GTK+ interface. I personally think GTK is a nice look & feel but it doesn’t intregrate well with KDE which uses QT. All thats pointless to most users, just remember BPM dun’t look as pretty as Konqueror for all intents and purposes. It offers a quick check of all ports available, all installed ports, e.t.c. as well as the catagories in a left plane. A top right plane shows the ports in the catagory and the bottom right plane shows discriptions. Works pretty nice and looks sorta like ones E-Mail clients. One can also run a simple search. It’s just a standard search afaik no support for regex which also is not of importance to most users !

To install the program just select it and click the instal botton. You can break it into steps if you only want to do parts of it. I.E. fetch, checksum check, build, install, and clean. Just checking install does it all. You can click details to get a embedded console out put and even open a terminal from the app. It also supports uninstalling the thing. It’s very nice but lacks in a few areas.

No support for portupgrading/downgrading
No support that I know of yet for packages (maybe a plus actually 😛 )
No support that I know of yet for searching with Regular expressions

It does however give you a very nice simple interface to make installing software the FreeBSD way very easy. I admit for once I did sorta skip the EULA basically so I don’t remember the licensing terms other then it’s free to use. If it is open source it might be worth my while to look into this application more.

food time.

Well after stints of packet loss and high pings with the ol’ISPs DNS server things seem stable again. Since I made a bit of a booboo when I uninstalled Gaim (pbi) to try to install it via pkg’s so I could try installing an X-Fire plugin and OTR didn’t go well. Note to self always use ports for any thing big ! I’ve been learning to live with Kopete. It’s got the level of configuration options one would expect from a KDE program. While Gaim feels like a super enhanced version of the old (pre trijon or w/e) AOL client. Kopete feels more like the regular MSNMSGR client. I prefer Gaim really, even the AOL client was alright until they made it bloat ware.

The biggest reason to use applications like Gaim, Kopete, Trillion e.t.c. is they support many protocols ! Gaim is plugin based dunno about Kopete. Generally a Multi-Protocol Instant Messenger (MPIM :P) Client. Should support the basics, AIM, MSN, Yahoo, Google, ICQ, IRC (if not the best clients…), Jabber e.t.c. Kopete is pretty well rounded but I prefer Gaim personally. After customing it to behave more Tabed IM based (ala aim style) instead of multi-window heck (bye bye msn style) it’s quite good. It *THANK GOD* lets you change the style of message displays – VERY IMPORTANT change it quick if you IM a lot, trust me ! Default font should be the standard for KDE in my case it was Sans Serif. To me it’s a no frills font, changed it to Bitstream Vera Sans for now. Usuually I try to keep logged into AIM do to a few issues with X-Fire on Unix/Linux/BSD/Mac 8=) Most of the [SAS] uses both and formerly AIM was required for member ship and a Live Ops Warning/Deployment system IIRC.

Really I think I prefer IRC which is good for a more casual chat. FRI IRC is more a “Chat Room” thing then One-On-One 111 commu for most usage (afaic). MSN’s ok, offical clients emotes were ok when I used it, if they are like what MSN Gaming Zone has now its great. AIM *had* a good client but emotes that sucked. What I like about aim more then msn is you can have an addy people can reach you at but they don’t need to be added to a buddy list to contact you. Which is nice since I prefer IMs to phone calls and one can always restrict it. MSN/X-Fire follow what may be a more traditional model. Only buddy list contacts can reach you. I’m tempted to try ICQ some time but I don’t know any one who uses it often, most of my friends use ether MSN or AIM but mostly we all settle on X-Fire haha.

Given some recent issues I’m very tempted to try and start learning Germain. At least to read/write it, I know at one point I was getting very good at reading signs in MoH =/. Germany has always interested me, in a number of ways as have a few other countries cultures. Maybe it’s because of my studies about WWII and military history. The Germain language I’ve never learned much of, like many people I pick up a few words here/there in other languages in passing. Needless to say its one of the countries I’d like to vist if I ever had a world trip. I wouldn’t want to live outside of the US but it would be nice to travel around the world a little. Any country that has H&K Weapons is worth a vist I’m sure 🙂

I know all of 1 or 2 words in Japanse, maybe same in Chinese. 3 or 4 words or more of Italian most of which I can’t say in polite convo and wouldn’t dare try to spell. Me and my brother are two of the only people I know who can say FU in another language hehe. Not that we do, I don’t and he prefers the English version just like our Mother (her favorite 4 letter word 8=) ). A couple of words in Spanish and French (more ladder then former). I know Italian, French, and Spanish are all very simular and learning one would make it easier to learn the others. I don’t know how many words I remember in Klingon, dang pronoucing those right are pesky. Most of my exp. With the German language has been from my WWII studies actually, so it’s mostly related to military words/terms. Not very good for a conversation really. Need less to say if it’s not a computer language I’m not really multi-lingruel. Being an American and a Computer-noid. I mostly encounter people that speak English or Spanish, ocassionally both. When online usually its ether French if they don’t speak english, some times Germain but more often German/English then French/English speaking. I’ve met about 2 or 3 people that are really good with many languages in my net time. While I have nothing aganst France, Germain interests me more <_< Being able to read the language and understand it would be my first goal, writing it second and being able to speak it properly would have to be done along side the first if I’d ever manage it. One thing I do like about my native language is that it’s so screwed up, any native speaker of English will know what your talking about. Sure US/UK is diffrent for a number of things, I remember a funny post Rouge once made about UK English taking over the world or some thing hehe. Yet the language is so nuts at least on this side of the pond. From some of the issues I’ve seen in translations I’m not sure how two people of the same country can understand one another some times, especially in a language like Italian. I know in the US people talk diffrent from place to place in prounced style and spelling but it’s not much till you hit slang. IMHO proper English makes about as much logical sense as horse dung rotting on the wall. So obiously with my opinions of my own language what harm is there in learning about another for fun and function ? If ones going to try and learn another language may as well be one that one may enjoy. I don’t think there is any thing worse then English unless your talking machine code. I’m also a kind of nut, I know C++ is more used but I know more C because I enjoy C better. I think I should start splitting entries because they tend to get huge and I usually edit them shortly after if I find a reason. Think I’ll start trying to learn the basics over the weeki. I’ve got a Biology test to finish, a history test to do again. The USPS lost it I guess b/c it didn’t get to the school. A “tea” trip in the morning s’like a quarter to 0400 here and gotta be out before 1100. Best go to bed before the dog disowns me. It’s funny, for some reason after about 2100 they start staring at ya as if to say whens bed time ! LOL Sleep, sweet sleep now if the ol’brain would shut the frig up.