IRC Log Viewer » #firebreath » 2010-12-07

IRC Nick Time (GMT-7) Message
DFUN 02:12 Thanks you, taxilian, for the clarification on WiX and the plugin registration. I still can't find how it's done, though. I think I'm going to use InstallShield and set up the installer manually.
Can you tell me where to register for ActiveX browsers?
neilg_ 07:12 DFUN: what do you need to know about registering for ActiveX browsers?
I may be able to help
DFUN 07:12 hi, thanks
I just manages to use RegSvr32 from inside InstallShields install script
managed
I read somewhere that this isn't the best way for registration but can't think of any reason...
so this seems to be an adequate solution for me
maybe you can tell me how the WiX installer registers the plugin when I cannot read any registry information out of the wxs file. Just to satisfy my curiosity
neilg_ 07:12 As far as I'm aware (when I looked at the WiX script) it calls regsvr32
I do the same from my NSIS installer too
I've gone through the registration code myself (I fixed some bugs there if you want to register with HKLM) and it seems like that's the best way
DFUN 07:12 ok, that's good to know.
I still can't think of any reason why regsvr shouldn't be just fine. There's nobody using IE anyway :)
neilg_ 07:12 Yup, it's totally fine (I don't know of any reasons it would be bad... except for *my* use case where I want to register in HKLM which means the user has to have admin rights)
DFUN 08:12 hm, ok. I think for most purposes (especially mine) installing to the specific user account is fine.
neilg_ 08:12 I'm sure it's fine for most people. We're targetting schools and businesses - places where user accounts will be locked down so people won't normally be able to install anything!
DFUN 08:12 hi taxilian and... uhm... bye.
eamann 08:12 That was quick
So I'm looking for some advice on actually deploying a FireBreath plug-in (now that I've actually figured out how to build one)
I can manually install it by registering the DLL, but I need to package it as a web-based installer I can embed in a web page. Similar to the way a Firefox/Active-X plug-in detects whether or not it's installed then displays an "Install Now" link or button or whatever that allows the user to install the plug-in
taxilian 08:12 Still driving
eamann 08:12 Is this what the WiX tolls are for?
taxilian 08:12 But use wix
Not regsvr32
eamann 08:12 Ok, that's what I thought :-)
taxilian 08:12 Xept for testing
neilg_: Wix doesn't regsvr32. Nor should you
eamann 08:12 Now it's just a matter of learning to use Wix, but that should be fine
Thanks again for all of your help!
neilg_ 08:12 I thought it did. Why should I?
Erm... Why shouldn't I?
taxilian 08:12 Still driving
Hold :)
neilg_ 08:12 That's fine, it's not urgent!
taxilian 08:12 Ok walking now
Do you understand the fundamental difference between msi and other?
neilg_ 08:12 I thought so - but I could be wrong. ;)
taxilian 08:12 Msi is transaction based
neilg_ 08:12 Sure
taxilian 08:12 So it doesn't execute cmds it installs packages
So I'd you regsvr32 and then something changes, future uninstallera will be broke
But if wix installs the keys then it just reverses the transaction
And you're fine
Google regsvr32 activex install
If that doesn't help I'll be at a computer in 5
neilg_ 09:12 Well, I don't call out to regsv32 at all anyway, I register the DLL
But I'll look into that
taxilian 09:12 Same thing
neilg_ 09:12 Sure, I just wanted to be explicit
taxilian 09:12 Almost to class...
eamann 09:12 When I compiled in release mode, it built an MSI for me automatically ... no need to use regsvr32 at all. I guess that's because I had WiX setup already, though
taxilian 09:12 yes
nice to have a keyboard again :-P
neilg_ 09:12 And my problem is having multiple plugins to install at once because IE doesn't seem to support multiple MIME types from within one plugin
That's why I've avoided WiX totally - which is a shame because I really want us to switch from NSIS to WiX so...
taxilian 09:12 DFUN: for when you check the logs. WiX uses heat.exe to find out from the plugin what registry entries are needed (it basically calls dllregisterserver) and then generates a file that is included by the main WiX file
so all activex and npapi registry entries will be in that file
which is in the build dir
neilg_: it should be possible to make it work anyway; it'll create an installer project for each one, but the main thing you need is just the .wxs files generated by heat
so you can just grab those after the build and include them all
emann: yes, as long as WiX is installed, it will generate a .msi for your plugin no matter what mode you build it in
here it is: http://msdn.microsoft.com/en-us/library/bb204770%28VS.85%29.aspx#no_selfreg
this as well: http://blog.deploymentengineering.com/2008/09/howto-use-regsvr32exe-with-wix.html
and one of these days, neilg_, I'll figure out how to make IE do what we need :-/
neilg_ 09:12 That's really interesting to know. It hasn't been a problem for us but it conceivably could be in the future so I'll push us towards using that. But WiX needs to have a quiet mode that takes a directory to install to as an argument otherwise our installer will be pretty nasty :(
taxilian 09:12 it wasn't a problem for us either… until suddenly it was
and then comcast executives were calling daily to find out if I'd fixed it yet
not my favorate two weeks
I believe that WiX does have a silent mode
neilg_ 09:12 Well, for us we always call the old uninstaller before continuing with the install so we *should* cover that case... but still, it makes sense to do it the MSI way
I've logged a bug so when I'm free I can get back onto that
taxilian 09:12 there is just a lot more that can go wrong with letting it self-register
having gone through that (trust me, the problems that cropped up were hardly even believable, and definitely would not have been caught by calling the old uninstaller), I don't wish it on anyone =] granted, FireBreath's register/unregister is much better designed than that one is, so the particular problem would likely not happen
but with an MSI, you remove the possibility
I guess everyone must be finishing their plugins lately; we've been inundated with questions about how to use WiX
went for 8 months before anyone even ask about it :-P
dicroce 09:12 Hey Guys... Got a cmake question for you...
taxilian 09:12 morning
dicroce 09:12 I need to link firebreath against a different C runtime... Firebreath's default is "Multithreaded Debug"... I need to get everything built with "Multithreaded Debug DLL"....
taxilian 09:12 on windows?
dicroce 09:12 yeah...
how do I tell cmake to do that?
taxilian 09:12 http://www.firebreath.org/display/documentation/Prep+Scripts
search for "MSVC"
or look under windows params
dicroce 09:12 Cool... thanks... i'll give that a try...
neilg_ 09:12 You can call CMake with "-D WITH_DYNAMIC_MSVC_RUNTIME=1" I think to do that
taxilian 09:12 that's what I said :-P
neilg_ 09:12 Nuh-uh! ;)
lol
dicroce 09:12 It looks like I can just pass it to the prep script correct?
taxilian 09:12 yes, but on windows you have to put quotes around it
dicroce 09:12 ah.... ok thanks...
taxilian 09:12 I'll update that on the wiki
dicroce 09:12 I tried:
prep2008.cmd "-DWITH_DYNAMIC_MSVC_RUNTIME"
The project files still aren't using the dll runtime...
Does the prep script delete the project files first if they already exist?
is it possible it didn't regen them?
taxilian 09:12 what version are you on?
dicroce 09:12 not sure... let me look...
taxilian 09:12 if you haven't updated lately, you probably will need to specify your projects and build dir explicitely before you can pass in cmake params
dicroce 09:12 ahh... but if I update, I won't have to?
neilg_ 09:12 Pretty sure it needs to be "-DWITH_DYNAMIC_MSVC_RUNTIME=1" because CMake ignores it otherwise
dicroce 09:12 oh... i'll try that first...
taxilian 09:12 oh, yeah, that could well be
pretty sure I've fixed that in the 1.3 branch, yes
batch file magic… *shudders*
dicroce 09:12 Just adding =1 to the end didn't fix it... im gonna try specifying my projects and build dirs...
neilg_ 09:12 And if it passes it straight through (I haven't looked!) then it needs to be "-D WITH_DYNAMIC_MSVC_RUNTIME=1"
taxilian 09:12 could be
neilg_ 09:12 The way I initially got it to work was calling CMake directly... but I'm pretty sure I made it work using the prep2008 script in the end
dicroce 09:12 adding the project and build dir to the command worked... thanks guys!
taxilian 09:12 ok; if you check out the latest from the 1.3 branch it should work without that
just FYI
neilg_ 09:12 Cool, glad to hear it!
taxilian 09:12 or when I release 1.3.2
gotta run
be back later
neilg_ 09:12 Have fun!
taxilian 09:12 err, yeah… week before finals… fun...
=]
dicroce 09:12 good luck... :)
eamann 09:12 Just out of curiosity, anyone know the difference between Release and MinSizeRel?
I'm assuming MinSizeRel is meant to be for a smaller release package ... but I'm not 100% sure
neilg_ 10:12 I don't know what it does exactly but it attempts to minimize the libraries to the bare essentials so it produces a smaller binary plugin
eamann 10:12 hmm ... I'll have to build in both modes to see if it's worth it
But generally, smaller is better when it comes to web deployment
neilg_ 10:12 Well, it has to be installed to use the plugin anyway - so it may not be such a big deal
eamann 10:12 Not much of a big deal, but if the binary the end user has to download is smaller, it downloads faster, and leads to a more positive user experience
I'm in favor of speed and ease of use whenever and wherever possible
Which is the entire reason I'm using FireBreath in the first place ... I don't have to force people to use one browser or another because my plug-in only works there
taxilian 10:12 eamann: MinSizeRel has the compiler optimizer settings to optimize for size rather than speed
so it will not perform quite as well, but most likely won't be a noticable difference
that's what I normally use for plugins, actually
because it can knock off as much as a couple hundred K sometimes
eamann 10:12 OK
taxilian 10:12 default settings are to optimize for both speed and size; alternately, it can optimize for just speed or just size
eamann 10:12 well the meat of the system I'm building is in dynamically loaded JS anyway ... the FireBreath portion is just bridging the gap between my JS and a serial device
but the smaller the initial download, the better
taxilian 10:12 that is usually the case
eamann 10:12 I just continuously run into problems compiling the c++ source given to my by the other members of the team ... this header file's missing ... that source file has invalid characters ... FireBreath itself is working beautifully ... if only they'd learn from your example ;-) It'd make my life easier
taxilian 10:12 lol. it's taken a bit of work
eamann 10:12 Still, impressive
taxilian 10:12 in many ways, my real specialty is in creating reusable libraries and components; FireBreath is a perfect fit for me, you might say =]
but thanks; I'm glad it's helpful to you
eamann 10:12 6 months ago I would've thought this project I'm working on was impossible ... but we just did a proof of concept demo this morning and it worked! :-)
taxilian 10:12 if it's really helpful, feel free to make a donation. if you can't do so monetarily, that's fine; there is plenty that needs to be updated in the docs =]
and, of course, I always have a long laundry list of improvements to make to the code
eamann 10:12 if I could donate, I would. It's worth it
Is there an issue tracker somewhere though?
Maybe I can contribute in terms of code
taxilian 10:12 like I said; not all donations have to be monetary. little improvements to the wiki can make a big difference
there is; not sure if all the things that need work are on it =]
on the website, top left corner, there is an issue tracker link
eamann 10:12 Well I'm not really a C++ developer, but I might be able to help a little
taxilian 10:12 the best thing you could do (to start out with, anyway) is to fill in any holes you may find in the documentation
one great rule of thumb would be that if you have to ask us here, record the info somewhere on the wiki so the next person doesn't have to
doesn't have to be something you spend a lot of time on
I don't expect people to spend as much time on the project as I do =]
but every little bit helps
if everyone who ask a question would put the response on the wiki, our docs would get a lot better really fast
and it wouldn't hardly take them much time at all
eamann 10:12 I'm a huge fan of open source development, though ... so while I doubt I'd ever spend as much time on the proj as you, I'd be willing to spend some
taxilian 10:12 what do you see as your main skill?
the things you do best?
eamann 10:12 Honestly, I'm a front-end developer (mostly for websites).
I do a lot of work on WordPress, and I do a lot of work with jQuery
taxilian 10:12 just UI, or do you do graphics and layout as well?
eamann 10:12 all of the above
taxilian 10:12 well, we really really really need a new logo :-P
eamann 10:12 graphics, layout, general UI strategy, back end business logic
taxilian 10:12 and any suggestions you have for the website would be awesome
eamann 10:12 hmm ...
taxilian 10:12 because those are exactly the things that I am really really bad at
and I'm the one who put up the website
if you could help us out there, that would be awesome; we'll even give you credit for it on the site
(speaking of which, I really should put up a "FireBreath Contributors" page
eamann 10:12 Well I'll go through some of the docs when I have time ... and I'll think about ideas for a logo, too
speaking of which, what's the idea behind the name "FireBreath"?
taxilian 10:12 thanks =]
honestly?
Well, I needed a name
brainstormed
that was the best I came up with :-P
not very good from a marketing perspective, granted
eamann 10:12 It's not bad, I was just wondering if there was a story or deeper meaning behind it
taxilian 10:12 nope
nothing at all :-P
we could probably make one up, though… :-P
eamann 10:12 You could always argue that it's related to the whole speaking in tongues idea ... since it's cross-browser/cross-platform and all
taxilian 10:12 lol. not bad, not bad… =]
eamann 10:12 Actually, that was the first thing that popped into my head when I saw the name
kylehuff 10:12 ha, I like that!
when I heard it, after learning what FireBreath does, I imagine the icy cold BS of all that is browser plugin development, being melted away by a big, damn, fire breathing dragon...
taxilian 10:12 LOL
neilg_ 10:12 And my national flag has a dragon on it so I made a similar connection! lol
taxilian 10:12 if you notice, on the poor excuse for a logo that is there now, the 1/4 of the IE logo is pretty much covered by the flame…. :-P
kylehuff 10:12 =c )
neilg_ 10:12 Freudian?
taxilian 10:12 it's really the only place the IE logo fit properly
and the logical place for the flame to be
it just made sense :-P
eamann 10:12 Ah, so that's what that was
I could see Firefox, Safari, and Chrome in the logo ... had no idea the other corner was IE
taxilian 10:12 it'd be more obvious if the flame wasn't there
but that's not nearly as much fun
so you know, I'm the one who made that logo… so now you see what my design skills are =]
I'd really like to have our own layout someday, rather than using the generic confluence one. doesn't have to be anything fancy, just so that you can tell the difference between our site and someone else's without reading the corner =]
and a halfway decent logo to replace the crap one that is there
also, I'm still not sure if that logo is a trademark violation or not… :-P
eamann 10:12 Well I might be able to come up with something ... no promises, but if nothing else at least an idea
kylehuff 10:12 I've never actually read the EULA, but I am fairly certain even having the IE installed is a violation of something and a law suite waiting to happen...
taxilian 10:12 hey, that'd be better than what I have
LOL
I've discovered that if I ask for help from everyone, but expect it from no one, I am often pleasantly surprised
kylehuff 10:12 taxilian: that works with movies too...
taxilian 10:12 works with a lot of things =]
eamann 10:12 Never heard of this confluence things before ... hmm ... I guess it works
kylehuff 10:12 does anyone know if the binary of my plugin for Mac would run on an actual mac, I compiled it using virtualbox - I have no idea how the two are different.
taxilian 11:12 I would think so
as long as it is an intel
kylehuff 11:12 okay, cool..
taxilian 11:12 here is a concept idea for a firebreath logo; what do you guys think? http://www.firebreath.org/display/~richard/Home
taxilian 12:12 initial reactions from others are not good =]
kylehuff 13:12 I like the concept; what I like: it is simple. what I don't like: pastel..
netjunki 14:12 is there some easy way to make the FireBreath.sln contain a /NODEFAULTLIB:?
and does anybody happen to know how to sign my plug-in dll so I don't get the annoying yellow bar when I load my page that uses it?
in IE
jshanab_wcw 14:12 https://knowledge.verisign.com/support/code-signing-support/index?page=content&actp=CROSSLINK&id=AR1448 we havebeen playing with this and a cert we bought and the cabarc tool.
netjunki 14:12 thanks jshanab_wcw! I guess I should grab an updated platform SDK... that tool makes life easier while testing... though I'll probably just use the command line signtool... how are you making use of cabarc? I've got FB generating the .msi using wix ... do I need to wrap that up into a cab using cabarc?
hmmm... this looks like it might provide the answer to my question: http://stackoverflow.com/questions/1889203/create-cab-file-for-activex-installation-for-ie
it would definitely be a cool feature for firebreath to automate all of this stuff. :-) But first documentation on the process...
jshanab_wcw 14:12 We are currently attacking a problem on two fronts. manual creation of the CAB fromt he command line and porting our whole plugin to firebreath
both are kicking our butts
I have a lot of linker errors even though the libs show up in the project and have built.
netjunki 14:12 sounds rough... I'm helping with porting a java applet with a native component to be a native plug-in instead... it's going pretty well so far... everything is compiling... but we have very few dependencies and those are with libraries that we've been building for a variety of uses for several years now.
neilg_ 14:12 What do you need to NODEFAULTLIB?
netjunki 14:12 libcmt.lib
we're currently building in debug mode only... and some of our dependencies are not being managed through cmake yet
neilg_ 14:12 Then I believe you can just run the prep script passing in "-D WITH_DYNAMIC_MSVC_RUNTIME=1"
You need the quotes
It gets passed on to CMake which will rebuild the .sln using the MSVC DLL runtimes which is almost certainly the cause of your issues
netjunki 14:12 cool I'll give that a try. will I then need to redistribute the MSVC dll with my plug-in?
it's not a big deal since I already have other DLL dependencies (portaudio)
neilg_ 14:12 Well, yes, but if you're having that issue then you're including libraries that require it too so you'd have to do that anyway
netjunki 14:12 cool... I'll give that a try now.
neilg_ 14:12 I have to do that too - handy hint, use the "/q" parameter for the runtime installer to silently install it. Makes your own installer much neater!
netjunki 14:12 I do that with another product my company develops. :-) I'm trying to use wix for this project... I'll try to find the "wix way" of doing that. :-)
I think you mentioned the other day that you build your installer with NSIS, right?
neilg_ 14:12 Yup, though I'd like to switch us over to WiX
netjunki 14:12 well... I'm documenting the process I'm following to try and get a signed activex controller going and will also document how to get the MSVC runtime dll installed correctly with wix and post them on the wiki here
jshanab_wcw 14:12 I have a project that builds and a add_library entry int the CMakeLists.txt. and a target_link_libraries in the top level CMakeLists.txt but I get a long list uf linker errors
netjunki 14:12 can you post one of the errors?
jshanab_wcw 14:12 They are all my own classes. What I nned to know is more about the CMAKE system. What is needed to add things to the linker includes, is it the target_link_libraries and what if I have multiple levels lke a common directory with it's own CMakeList.txt file and a series of subdirectories each with there own CMakeLists.txt
netjunki 14:12 ah... I see... we're just avoiding that step for the moment so we can get things working
we have a directory of prebuild resources that we added to our CMakeLists.txt
jshanab_wcw 14:12 Because it is an existing plugin that I am porting, i am keeping all the directory structure.
netjunki 14:12 SET(PREBUILT_DIR ${PLUGIN_ROOT_DIR}/prebuilt)
so all of the bits that aren't directly part of the plug-in are there for now
and we'll move them back to including the source for those components as we convert them over to use cmake
jshanab_wcw 14:12 humm,
Well I think I discovered part of the issue. I was building up a EXTRA_LIBS variable, but it must be going out of scope and clearing. When I list the class directly it moves on tot he next list oflinker errors, the GDIPluss ones.
netjunki 14:12 hmm... signing the msi doesn't seem to have worked... maybe I need to sign the dll too...
neilg_ 14:12 You do need to sign the DLL
Sorry, I wasn't watching
That's the most important thing you can do
But the company name you sign the plugin with must match exactly the company name embedded in your plugin
That's probably not documented but we found (and solved) that problem here
netjunki 14:12 okay... I'll make sure that matches
neilg_ 15:12 I guess you're using signtool?
netjunki 15:12 yeah
neilg_ 15:12 Okay, good, because so do I - meaning I can probably help a bit. ;)
netjunki 15:12 is there some way to integrate the signing process with the sln via cmake?
or have you not dealt with that since you can just do it after everything has run and you're ready to build the installer with NSIS?
oh... I bet I can make this work by just signing the dll manually and then rerun the installer generation project...
that'll work to start...
neilg_ 15:12 I haven't tried but I imagine that it is
We have an automated build machine and compiling, signing and building the installer are separate steps there
And yep, that'll work
You can try it for yourself by signing the DLL and using regsvr32 (if you don't want to bother building an installer - which is obviously a nicer place to be)
netjunki 15:12 since I already have the installer building... I'll just stick with my current test pipeline. :-)
neilg_ 15:12 Yep, I don't blame you!
netjunki 15:12 hmmm... must be making some kind of error someplace...
maybe a mistake in my signtool options... even with the dll signed manually and regsvr32 it's still not working
neilg_ 15:12 Oh, wait, there's one more step
Well, maybe. What are you seeing now?
netjunki 15:12 I'm still getting the yellow bar at the top
is there something I need in the object tag in the containing page?
jshanab_wcw 15:12 I wish i knew. We are still having issues with it.
neilg_ 15:12 Which yellow bar though?
There are multiple bars that you could get ;)
Is it still telling you that the plugin is untrusted? Or is it asking permission to allow the plugin to execute?
netjunki 15:12 ah... um let me check...
"To help protect your security, Internet Explorer has restricted this webpage from running scripts or ActiveX controls
taxilian 15:12 I'm back
anyone notice I was gone?
kylehuff 15:12 yeah, but I kept myself busy while you were out
taxilian: http://www.firebreath.org/x/9AAh
some logo ideas
neilg_ 15:12 netjunki: Then I have a solution for you
You need to add your plugin to IE's allowed sites
Which means adding a registry setting
HKCU\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{YOUR PLUGIN'S UUID}\iexplore\AllowedDomains
In there you create a new key value with the domain name
You can also use * as the key value
netjunki 15:12 I have my installer doing: Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{20A4DB7A-B528-5264-B1F9-89DA15D63014}\iexplore\AllowedDomains\*
maybe that's not working correctly...
I'll go back through the whole process again... maybe I just skipped a step someplace.
neilg_ 16:12 You may also have to add it to HKCU\Software\Microsoft\Windows\CurrentVersion\Ext\PreApproved\{YOUR UUID}
netjunki 16:12 oh... or maybe I got my CLSID wrong...
taxilian 16:12 kylehuff: those are awesome! =] did you do those? I like the overall direction, though I agree they aren't "logo" ready
netjunki 16:12 where can I find that?
kylehuff: are you using Gimp to do those?
taxilian 16:12 netjunki: look in the generated rgs file
neilg_ 16:12 What taxilian said. lol
taxilian 16:12 or look at the generated .wxs wix file with the registry stuff in it
somewhere it'll be mapping the mime type to the clsid you want
you could add a post-build step to do the signing for you
kylehuff 16:12 taxilian: yes, I was trying to make good use of the time it takes to sit in on a waste-of-time phone-conference. I am not a logo guy, but I had a few ideas about using the internation "plugin" symbol, maybe someone can do something more appealing with the concept
taxilian 16:12 hmm. That's really not a bad idea
I like the puzzle piece
kylehuff 16:12 I used photoshop and gimp
taxilian 16:12 so one thing I've thought about is that it'll probably need to either have two versions or be able to look decent in a small square =]
because most places we use it are pretty much icons
but maybe a puzzle piece, a "FB" over the top, and some hint of flame somehow?
we could even do a icon logo and then another one with the text to the right; I like the "cross-platform plugin architecture" in there
kylehuff 16:12 yeah, that is what I was going for with the 3rd one, where the "FB" looks like coals, but replace the plugin with a non-burning version
taxilian 16:12 I'm thinking a lot smaller, though
and yeah, definitely non-burning; it's a bit too buzy
so the FB would have to be much bigger in relation to the puzzle piece
netjunki 16:12 hmmm okay something odd is going on... the generated files only have %CLSID% in them all over the place... that's probably not good. :-)
taxilian 16:12 netjunki: oh, yeah
forgot
no, that's normal
:-P
look at the .wxs generated file, then
if that doesn't work, it's in config.h, I think
neilg_ 16:12 It's definitely in one of the headers for sure
netjunki 16:12 this? <Product Id="{5ff4e17a-a8a5-5641-b179-591b9ad5ee51}"
neilg_ 16:12 Yes
netjunki 16:12 ah okay... so if I wanted to use that later on in the wxs... how can I access that value as a variable someplace else?
neilg_ 16:12 Right, I have to leave now. I'm sure taxilian can help you but if not then I suggest you email the mailing list because I'll be able to answer you that way
taxilian 16:12 look at PluginConfig.cmake
that's where cmake gets it
netjunki 16:12 neilg_: thanks for all of the help.
taxilian 16:12 and cmake does a configure_file on your wxs template (notice there are some ${VARIABLES} in there), so anything in PluginConfig you can safely use in the wix file
kylehuff 16:12 taxilian: I added another revision, kind of like that? (I am using "kind of" kind of loosely..)
jshanab_wcw 16:12 Does anyone know how to tell CMAKE to link to the GDIplus library?
taxilian 16:12 definitely more along those lines. I think maybe the textures are overdone, though
and maybe stagger the F and B?
kylehuff 16:12 that where the loosely part comes into play.. =c )
taxilian 16:12 oh, don't get me wrong… if I didn't like it at all, I wouldn't be making suggestions. :-P
but yeah, I actually like this general idea better than anything else I've seen
anyone else have an opinion?
(keeping in mind that we're talking about very broad ideas right now)
http://www.firebreath.org/display/~kylehuff/2010/12/07/Some+concept+graphics+for+the+Firebreath+logo
jshanab_wcw 16:12 I look at those and I think they get away from the central idea. What if we had 5 or 6 puzzle pieces, each a piece of the logo that have the individual browsers' colors/logos as a background and then the top piece that says firebreath connects them all together
taxilian 16:12 I like the feedback… two problems, though: first is that the logo has to look okay small. the second is that I've been doing some digging, and I think using the other browsers logos qualifies as a derivitive work and we could be sued for copyright violation
which might be a problem
jshanab_wcw 16:12 or each piece connected together in a circle with "FB" inside
taxilian 16:12 hmm. I definitely like the imagery… just the trademark thing and not sure you could make that look decent in an icon
granted, we could have two; a larger more detailed one and a small simpler icon-like one
netjunki 16:12 I'd use a different font for the f and b... maybe a more stylized f like used when doing derivatives ex: f(b)
taxilian 16:12 the reason that I like the puzzle piece is that it is used to indicate plugins, but it's simple enough to work in an icon
hmm, not a bad idea… you could even use the german esset (however you spell that) for the B to make it kinda match
ħ
hmm, might not work
but worth playing with
ideas like that
or maybe something with the top of hte F curved and pointed, like a tooth =]
jshanab_wcw 16:12 Who can I ask about the CMAKE/GDIPlus issue? Any ideas, i am quite stuck
taxilian 16:12 whats the problem?
I've used GDIPlus in my plugin
kylehuff 16:12 hmm.. those are all really good ideas, though, 20,000 realms outside of my graphic ability =c )
taxilian 16:12 hey, it's still an actual decent idea we've got now
that's a lot better than we were :-P
where did you get the outline for the puzzle piece?
jshanab_wcw 16:12 I do not know how to tell the CMakeList.txt that it needs to link it in, I get unresolved external errors
taxilian 16:12 from my Win/projectDef.cmake file:
target_link_libraries(${PROJNAME}
${PLUGIN_INTERNAL_DEPS}
${FBLIB_LIBRARIES}
Gdiplus.lib
)
kylehuff 16:12 taxilian: I found it here http://tinyurl.com/2efnt2m - of particular note is their license: http://tinyurl.com/2cfvotq
jshanab_wcw 16:12 ProjectDef? wwe can change that, it doesn't get regenerated?
taxilian 16:12 nothing in your plugin dir gets regenerated
jshanab_wcw 16:12 thanks!
taxilian 16:12 unless you re-run fbgen.py, but you shouldn't really ever need to do that
jshanab_wcw 16:12 right. :-)
Thankyou,. 1 external library down 4 to go, but they are mine.
taxilian 16:12 add then to the same place
path and file if need be
jshanab_wcw 16:12 I have a new style of linker error, this one is cannot open file 'avcodec.lib'. Not an unresolved external and not a dll. is this handled differently?
nevermind :-) It is getting late and the caffine is wearing off
taxilian 16:12 well, where does it think it's getting avcodec.lib?
lol
jshanab_wcw 16:12 It is built a few levels up. How do you know when to put it in the CMakeList.txt vs the projectDef.cmake ?
taxilian 16:12 CMakeLists.txt is plugin global, whereas projectDef.cmake is specific to windows
jshanab_wcw 16:12 Ah. humm. avcodec is going to be in all platworms, but it is different for each plaform it is built on
taxilian 16:12 up to you how you include it
you have to set the target_link_libraries after the add_library call, so in cmakelists it would need to be after include_platform
jshanab_wcw 16:12 I was plying with the order. I tried to have an EXTERNAL_LIBS variable that got built up, but I couldn't get it to work.
taxilian 16:12 you could probably do that as well
jshanab_wcw 16:12 I think a trip to Barnes N Noble and a few hours with a book on CMake is in the cards.
taxilian 16:12 I finally ordered Mastering CMake
that's the only one I'm aware of
not sure if barnes n noble will have it
I have a copy; you're welcome to borrow it if you ever stop through Utah…. :-P
I haven't had time to read it yet, though
haven't even opened it :-(
netjunki 16:12 taxilian: another logo concept... built from the puzzle piece, a public domain fireball I found... and some text using the Pristina font that was installed on my Win7 system at home... so no idea where it came from. http://netjunki.org/FBlogo1.png
to give an idea of what I'm thinking
I agree with you about the texturing of the puzzle piece... I think it makes the image to "busy"
taxilian 16:12 definitely
and I think the "FB" need to be a lot bigger
netjunki 16:12 and I'm not sure about the b from the pristina font... looks too much like an h.
taxilian 16:12 relative to the rest
but I think this is not a bad direction to be going in
we need to find a way to get an untextured puzzle piece to play with
it's nice to have some other minds besides mine on the problem, though… a logo is such a little thing, but it has a pretty major impact on the project's image
no pun intended
netjunki 16:12 I converted the puzzle piece into an outline stroke only
http://netjunki.org/puzzlepiece_stroke.png
jshanab_wcw 16:12 Grrr. LINK : fatal error LNK1104: cannot open file 'avcodec.lib'
I put the path in the include_directories and then put "avcodec" in the target_link_libraries.. Should the directory end in a slash?
I don't put avcodec.lib instead of avcodec in the target_link_libraries do I?
taxilian 16:12 include_directories has no relation to target_link_libraries
so you'll have to give it the path and filename
you probably don't need the .lib; it aparently is adding it yourself
jshanab_wcw 17:12 Oh, duh
taxilian 17:12 ^yourself^itself^
netjunki: I don't even know gimp that well :-P I made the current "logo" with gimp
and it required all of my ingenuity
jshanab_wcw 17:12 I have had to exit Visual Studio every time I re-prep cause it starts to build on the first changed file and goes nuts. Anyone know how to turn that off in VS2010? it id driving me nuts
taxilian 17:12 say "no" instead of "yes"
and try reading the dialog more carefully =]
netjunki 17:12 taxilian: I've been using Gimp off and on since 1998... so I've picked up a few tricks over the years. Actually I really like the current logo... but understand the concern re: trademark
jshanab_wcw 17:12 Really? It doesn't say anything about triggering a build, just to reload the file cause it changed
taxilian 17:12 the only dialog that will pop up that would cause it to build does
there are 3 different dialogs that you might see
one of them says "cmake just ran; do you want to reload all of your projects and then rebuild?"
jshanab_wcw 17:12 I still cannot open the file. It does however add the .lib on the end. Can the target_link_libraries handle relative paths?
taxilian 17:12 if you say yes, it does that
if you say no, it reloads the projects and doesn't build
if you say cancel, it prompts you to reload each project individually
netjunki: yeah, I'm lousy at graphics
jshanab_wcw 17:12 I will read more carefully, It got really confuse last time and crashed VS2010 :-(
I end up having to confirm 10-20 dialogs sometimes :-(. but you are succesfull in leaving VS open?
taxilian 17:12 jshanab_wcw: you can figure out the absolute path using cmake variables, or you can use ${CMAKE_CURRENT_SOURCE_DIR}/../
because that will be your plugin dir
I leave VS open, but I run prep from the command line
jshanab_wcw 17:12 right. I did that elsewhere(In the includes) Just wondering if CMAKE doesn't allow it ther, it allows it in the includes. I am new to CMAKe
taxilian 17:12 it should allow it anywhere, basically
yeah, cmake takes some getting used to
it really solves a lot of problems, though
for us
jshanab_wcw 17:12 ooh, it didn't like that. It you provide a full path, you have to add the .lib !
netjunki 17:12 be right back... accidentally loaded my plugin into this browser...
taxilian 17:12 huh
okay
lol
you could just use a normal IRC client, netjunki =]
netjunki 17:12 I could... but that's be too smart. :-)
brb
jshanab_wcw 17:12 taxilian. It is still sticking it's tongue out at me. cannot open avcodec.lib
taxilian 17:12 look in the linker settings in your project and see what it has there
often when cmake is acting strange, you can figure out what is happening by looking at visual studio and figuring out what is configured wrong
it'll be in project settings, linker, input
jshanab_wcw 17:12 Good idea
When you are right... it is in there twice, once with and once without the path
taxilian 17:12 so now you just have to figure out why that is
this is called "been there, done that" :-P
jshanab_wcw 17:12 Found it :-)
OIn one of those subdirs of a subdir
taxilian 17:12 btw, it is possible to set a variable in the parent scope
otherwise a variable will go out of scope when the cmakelists.txt file ends and goes back to the parent
jshanab_wcw 17:12 Thanks, that is what I was missing about my Extra_libs variable. For now, i just want to get it working. There is gonna be some cleanup for sure.
taxilian 17:12 everything has a learning curve; even FireBreath, despite my best efforts =]
jshanab_wcw 17:12 Well. firebreath seems very well laid out and easy. The problem is this was an existing project i inherited about 1.5 months ago and it is a bit of a mess. Written by a subcontractor of a subcontractor before i was hired. (He was in russia, we had to use the web to translate all the comments the first week)
taxilian 17:12 I don't know what your problem is… I don't have any trouble at all reading Russian. ;-)
jshanab_wcw 17:12 I was wondering, I saw it pop up in some of your demo's, My office mate went "Oh no! not again" ROTFL
taxilian 17:12 lol
"and yet, he speaks with no trace of russian accent!"
jshanab_wcw 17:12 yup.
taxilian 17:12 I run my computer in Russian most of the time, it helps catch localization and unicode problems
I lived there for 2 years, so I am moderately fluent
jshanab_wcw 17:12 I can see now I have 4 more libraries to link, the 3 that are mine are expected, but I have one from boost. boost::gregorian
taxilian 17:12 hmm. that might be in boost date_time
if so, you can do add_boost_library(date_time) in your pluginConfig
jshanab_wcw 17:12 thanks, I thought there was a good way, since boost is already used.
taxilian 17:12 I hate having to download dependencies, so we just package it all in =]
jshanab_wcw 17:12 I never checked, what version of boost?
taxilian 17:12 1.44
I'll probably update it to 1.45 after school gets out
it's all I can manage right now helping out in the channel
jshanab_wcw 17:12 I know, and I really appreciate it. How is school going?
taxilian 17:12 well, one test out of the way, so now I just have 3 projects and 1 presentation to do by thursday night
well, one project is due tomorrow
and the presentation
then finals start next week
jshanab_wcw 17:12 Best of luck!
taxilian 17:12 =]
kylehuff 17:12 taxilian: I added a few more examples based around the plugin with FB over it.. nothing a lot different than before, just with different font for illustrative purposes. http://www.firebreath.org/display/~kylehuff/2010/12/07/Some+concept+graphics+for+the+Firebreath+logo
netjunki 17:12 yeah... this is a lot more comfortable than the web interface...
and it's not like I don't know how to use IRC... been using it since 1994
taxilian 17:12 lol. the web interface is nice for getting people here, but if you're going to hang around you want something a bit better
I use adium and pidgin, so that I don't have to run an extra program
netjunki 17:12 I use IRCii in a shell on my linux system.
jshanab_wcw 17:12 I have used chatzilla for a really long time
netjunki 17:12 since the only IM I use most of the time is google chat with my co-workers
I used pidgin a lot back when it was still called gaim
and I've used Adium on OSX
taxilian 17:12 kylehuff: it would be really interesting to see the second-to-last without the flames and with the semi-transparent flame from http://netjunki.org/FBlogo1.png between the puzzle and the FB
dunno if that's doable or not =]
jshanab_wcw 17:12 I use pidgin on all my boxes windows or linux for general IM. also since it was gaim. Ok, New unresolved for boost. filesystem2 and system::error_code
taxilian 17:12 and I'd almost like to see the letters even bigger than that… dunno. I'm going half-blind, here =] you guys are awesome, btw
jshanab_wcw: add_boost_library(system) and add_boost_library(filesystem)
netjunki 17:12 kylehuff: if you want the raw source I used for the fireball... you can find it here http://www.wpclipart.com/space/fireball.png.html
jshanab_wcw 17:12 I was guessing filesystem2. Ok that takes care of all the boost linker errors! wohoo, i am getting closer
taxilian 17:12 there is a filesystem2 and filesystem3, but they can't be used together
at the moment, filesystem just defaults to filesystem2
I think there is a way to override it, but I forget
kylehuff 17:12 taxilian: I'm not sure if that is what you meant or not, but I made the font bigger and put the fireball into the center..
taxilian 17:12 hmm. definitely closer;
jshanab_wcw 17:12 I am definitly miss-understanding CMake a bit. I have a direcotry with a CMakeList.txt and 4 sub dirs each with there own CMakeList.txt. The subdirs end with add_library( thename STATIC and ${SOURCES}) then in the top level I target_link_libraries all the pieces
taxilian 17:12 jshanab_wcw: that sounds right
jshanab_wcw 17:12 I get an error: Attempt to add link library "foo" to target "bar" which is not built by this project. but foo and bar are subdirectories not the main directory
taxilian 17:12 kylehuff: I appreciate you humoring me =] if you get tired of it, that's fine :-P I'm thinking something like this, but with a transparent background and that flame about the same height as the puzzle piece, but partially transparent and behind the "FB"
keep in mind I'm totally brainstorming
and my brainstorms tend to produce a lot of static =]
jshanab_wcw 17:12 Are the add_subdirectory entries what cause CMake to build the subdirs?
taxilian 17:12 yes and no
add_subdirectory says "there is a cmake project file here, run it"
kylehuff 17:12 taxilian: not a problem; I just hope you realize, I am *trying* to help, and that is a crap-ton of emphasis on the *trying* part.. I don't know what I am doing either.
taxilian 17:12 add_library causes it to create a vcproj
kylehuff 17:12 taxilian: you mean, transparent and no puzzle piece with the fire?
taxilian 17:12 kylehuff: well, I and at least one other person think that what you've come up with so far is better than what I've been able to come up with in months
including the current one
not wihtout the puzzle piece
almost like the puzzle piece is on fire, but with the flame transparent over the top of it
http://netjunki.org/FBlogo1.png <- transparent like this one, but about the same height as your puzzle piece
notice how you can see the texture of the piece behind it?
it might not even look good, but it looks okay in my head :-P
and then the background behind the puzzle piece transparent
kylehuff 17:12 oh, okay.. I think I get it now.. I will play with it and a few derivatives and post back.
taxilian 17:12 cool
thanks for doing this; I really do think you are close to having something we could use at least until a real designer comes along :-P
jshanab_wcw 18:12 taxilian. thanks. With your help i get it now. I need to get some grub and then I can finish up some simple case issues and a few sub-libs. TTYL
taxilian 18:12 cool
I'll be back in a few minutes, gotta hit the head
unfortunately at school that means I must pack everything up and get it back out again after :-/
netjunki 18:12 kylehuff: the current logo variations kind of remind me Adobe's current product logos
like the FB for Flash/Flesh builder
though I think they're going for a Periodic Table look for their entire product line...
kylehuff 18:12 netjunki: I think the slanted F doesn't help..
taxilian 18:12 hmm. yeah, maybe a different font would be better for that reason
you're right, the slanted f does kinda look like flash
Jarom had an interesting idea; flip the puzzle piece horizontally and have the flame come out he "mouth"
netjunki 18:12 Flash is currently using Fl in Sans Serif in a red box
taxilian 18:12 kylehuff: I don't want the background of the puzzle piece to be transparent; I liked that being solid
netjunki 18:12 oh... right the other flash logo...
taxilian 18:12 just the background behind the puzzle piece
netjunki 18:12 yeah okay... not so good. :-)
especially in that font I chose. :-)
taxilian 18:12 so maybe using a different font for the F and B (not even neccesarily those characters, maybe just normalish but stylized ones)
grr. I wish I wasn't so useless with graphics; I could maybe help more =]
oh… the background of the puzzle piece is white, not transparent
but usually the icon will probably be on a white background, which looks a little odd
netjunki 18:12 anyway... I need to think about getting some food... either back later today or tomorrow
taxilian 18:12 lol. welcome, grompy =] kylehuff is playing with the logo ideas, or at least has been
kylehuff 18:12 okay, a few more, and I will put background for the plugin to something other than white. http://www.firebreath.org/display/~kylehuff/2010/12/07/Some+concept+graphics+for+the+Firebreath+logo
taxilian 18:12 kylehuff: have you considered the idea of having a flame coming out of the "mouth" of the plugin when aimed like in the last?
grompy 18:12 I was just chatting with Richard and told him we could flip the puzzle piece horizontally then have the fire come out of the.....
I guess you got that.
taxilian 18:12 (and yeah, I definitely like the gray better than white on the bg)
hehe
grompy 18:12 I still kind of like the idea of having the fire melting NPAPI and ActiveX :)
taxilian 18:12 I didn't mention that one; still can't envision it myself :-P
particularly since we have to fit this in an icon-sized logo =]
I think I like the brighter color on the flame, also; it looks cool larger, but smaller the darker color seems to look a little off
kylehuff: if you did that last one with the original flame, I think that'd be my favorite so far
(the one you just added)
kylehuff 18:12 sorry, I thought I had added the next (#17), same as #16, except without the darker overlay on the fire.
bbl, gotta drive home
taxilian 18:12 http://code.google.com/p/firebreath/logo <— grompy, what do you think?
grompy 18:12 looks fine to me.
taxilian 18:12 seems like the "F B" is just a little hard to read :-/ other than that, I really like it
maybe we could change the color of either the text or the puzzle piece
not sure which
not half bad for someone who professes to be bad at graphics =] it's the best we've come up with so far, I think
taxilian 19:12 kylehuff: if you can fix just a couple minor issues (that unfortunate, I'm not sure how best to fix) I'll put your logo up as the main logo until we're ready
until we find a real designer, that is
the only thing I don't like is that there isn't enough contrast between the puzzle piece and the letters when it's really small, like on http://code.google.com/firebreath/
kylehuff 20:12 hmm, yeah.. did you say we want to change the F to something that looks less like adobe flash?
taxilian 20:12 yeah, that's a good idea
sorry, we're just close to having something useable that doesn't look like crap for a logo for the first time in the history of the project, so I'm excited :-P
kylehuff 20:12 okay, I will change the character and also reverse the outline, so it is white text with black outline
taxilian: added new iterations
taxilian 20:12 looking now
kylehuff: that definitely is an improvement; we can read it now
but I'm not sure I like the white
is there another color we could use that isn't black or white?
either for the text or the background of the puzzle piece
here is what it currently looks like at google code logo size: http://code.google.com/p/firebreath/logo
kylehuff 20:12 let me play with it; I will get back to you
taxilian 20:12 cool
it's soo close =]
kylehuff 20:12 okay, I put a few iterations, with a minor change to the color of the plugin - I the last version you had seen, as well as the new version in a vertical line, with a sample 55x55px image beside it can be seen in it's icon'ish state
taxilian 20:12 kylehuff: kinda not liking the white color for FB :-/
on the other hand, I'm not sure what color to suggest for it...
hmm, but maybe a light gray would be better?
I do like the reddish background
huh, textured. looks cool zoomed
I'm liking this; what do you think on the gray idea?
kylehuff 20:12 I have zero imagination - I will have to see it, but I'm going to go eat first. be back later
taxilian 20:12 no worries
thanks for doing this
seriously
I owe you a favot
let me know what feature you want ;-)
we could even try some blue or something
if you want to send me the files I could try experimenting a bit as well, so you don't have to do all the work
kylehuff 21:12 yeah I plan to attach the psd, but I want to get rid of the extraneous layers and name the ones remaining. (some of the layers won't work properly in the gimp though..)
taxilian 21:12 ahh
makes sense
taxilian 21:12 lol. you like that black, huh? :-P
looks better with this font, though
kylehuff: what does a medium gray look like? (for the foreground of the text)?
kylehuff 21:12 I thought I would try it again with the new font and puzzle color...
taxilian 21:12 it's definitely an improvement, but I still don't really like it :-/
hmm. it is better than white, though
let me change my vote; I'm undecided :-P
kylehuff 21:12 ugh, I must have missed an upload. #23 is the gray
taxilian 21:12 lol. oh
wish I could figure out how I somehow got this to send me emails whenever you upload things
it's a good trick
but I have no clue how I did it. must be something I accidently set up awhile ago :-P
kylehuff 21:12 there; I put #23, and also #25
taxilian 22:12 hmm. can I ask one more? a light gray? maybe #BBBBBB?
actually
#DDDDDD
really light gray
kylehuff 22:12 for the text?
taxilian 22:12 yes
with the red background
I really like that
kylehuff 22:12 ok, just a minute
okay, it's up there
taxilian 22:12 I like it
we'll use it for now, if you're okay with that?
kylehuff 22:12 fine with me
taxilian 22:12 take a look: http://www.firebreath.org/display/documentation/FireBreath+Home
kylehuff 22:12 I attached the psd, but I don't know where it went..
taxilian 22:12 it's there
http://www.firebreath.org/pages/viewpageattachments.action?pageId=2162932&metadataLink=true
kylehuff 22:12 okay, cool
taxilian 22:12 thanks lots
I owe you
kylehuff 22:12 no problem
confluence actually made that whole process a lot easier than it could have been...
taxilian 22:12 I'm actually pretty happy with confluence
there are a few oddities and nitpicks, but on the whole, very nice
kylehuff 22:12 agreed
taxilian 22:12 http://www.facebook.com/pages/FireBreath/140696609310963
wow. yeah, that looks way better
kylehuff 22:12 26 iterations later...
lol
that was a nice distraction; now I guess I should finish this damned extension
taxilian 22:12 hehe
let me know when you need a hand =] someone may come up wtih something better eventually, but this finally at least doesn't look tacky
and it really looks pretty good
it is really nice to have that up
anyway, I'm headed home now. only 10:30pm, and already headed home from school!
see ya'll tomorrow
kylehuff 22:12 have a goon night!