=== avoine [n=avoine@modemcable056.3-203-24.mc.videotron.ca] has joined #ubuntu-installer === mpt [n=mpt@121-72-132-150.dsl.telstraclear.net] has joined #ubuntu-installer === mpt [n=mpt@121-72-132-150.dsl.telstraclear.net] has joined #ubuntu-installer === jetsaredim [n=jgreenwa@inet-nc01-o.oracle.com] has joined #ubuntu-installer [07:36] was looking for some help in making some changes to ubiquity [07:37] to add some new dialogs [07:37] is there any documentation on this? [07:37] I've only minimally played with glade, but there is so little documentation out there its hard to know exactly what to change === jetsaredim is now known as jetsaredim_ [09:45] jetsaredim_: no, I'm afraid there's no documentation at all about that [09:45] jetsaredim_: adding new screens is a pain in the arse and still best avoided ;-) [09:46] jetsaredim_: what exactly are you trying to do? [09:47] jetsaredim_: doc/README in the ubiquity source is a start at explaining how it all hangs together, but makes no pretence at being a "how to add new pages" guide === cr3 [n=marc@pdpc/supporter/bronze/cr3] has joined #ubuntu-installer === avoine [n=avoine@modemcable034.0-70-69.static.videotron.ca] has joined #ubuntu-installer [02:21] cjwatson: ping [02:26] hello [02:28] h [02:29] so I offered to help the mythbuntu group with some python, but I'm not so good with glade [02:29] we'd like to add a couple pages to allow for mythtv setup/installation during install time [02:29] on a new boutique distro [02:30] ok, I have to say that at the moment ubiquity is probably about the hardest possible place to do that ;-) === jetsaredim_ is all ears [02:30] heh [02:30] how so? [02:31] you'd need to edit ubiquity/frontend/gtkui.py and look for where names beginning with "step" are handled at the moment [02:31] you'd need to add pages to the glade file [02:31] yep [02:31] if debconf is involved, you'll need to add ubiquity/components/whatever.py [02:31] that's about what I figured [02:31] but the UI is all totally monolithic [02:31] i can see that [02:31] :) [02:31] so it's not really well suited for modifications like this yet [02:32] I do hope to split it out one day as it would make things easier for me too, but it was kind of like this when I took over the code from guadalinex [02:32] hm ok [02:33] in gtkui.py, you'd need to edit the run, on_next_clicked, and on_back_clicked methods at a minimum [02:33] do you know of any tools that make it easier to read the glade file, do ya? [02:33] possibly random special-case handling elsewhere [02:33] in edgy, use glade-2; in feisty, use glade-3 [02:33] you don't want to edit it by hand [02:33] yea - I think I got the next and run, but not back [02:33] I'm having an issue with my glade installation at the moment [02:33] fix it first, then ;-) [02:33] yea [02:34] so [02:34] but the packaged versions should work fine; they're what I've always used [02:34] how do you map the stuff that you design in glade to actual code? [02:34] how do you mean? [02:34] i guess its more of a glade question [02:34] but I'm just not 100 familiar with how glade actually works [02:35] jetsaredim_: the names of all the objects get imported into the global space, so you can refer to things like self.username_box [02:35] ok [02:35] look around where gtkui.py calls gtk.glade.XML [02:35] ok [02:36] where to the settings get stored [02:36] that's up to you [02:36] how do they get translated into install actions [02:36] like is there a global queue of packages or something [02:37] typically you need to write code in scripts/install.py to apply modifications to the installed system [02:37] like if I put in a screen that says I want to install 10 packages and a couple have customizations [02:37] ok [02:37] is there some sort of install chroot? [02:37] ideally it's best to avoid installing packages in ubiquity (although sometimes it's necessary) [02:38] as opposed to? [02:38] ubiquity normally just copies the live filesystem over and then removes stuff from it [02:38] so normally we try to put everything we need in the live filesystem [02:38] ic [02:38] like I say, it's not always possible, but usually it works out, and it makes the live filesystem a better demo [02:38] I assume you've read doc/README? It explains this [02:39] ... :) [02:39] install chroot> yes, /target === jetsaredim_ runs and hides [02:39] does the mythtv stuff you're trying to configure use debconf? [02:39] some [02:40] but there is at least one utility that we'd like to be able to run from inside the chroot [02:40] cause it needs interaction [02:40] sure, you can do that, chrex function in scripts/install.py [02:40] er, interaction? [02:40] as in command-line? [02:40] no [02:40] gui [02:40] mythtv-setup [02:40] meh, that'll be fiddly [02:40] how so [02:41] you'd have to set up X authorisation in the chroot and stuff, and it would generally be a mess [02:41] also pretty ugly UI-wise; we try to ask all the questions up-front, before the chroot exists === evand starts getting gparted flashbacks [02:41] there's really no non-interactive way to setup mythtv [02:42] unfortunately [02:42] the only other thing I could think of would be something run on first boot [02:43] mythtv-setup doesn't ask all that many questions, does it? [02:43] and presumably it just blats the answers into a configuration file [02:43] it's also a pretty hideous UI [02:43] yes and no [02:43] yea [02:43] for sure [02:43] but there is stuff about if you have multiple cards [02:44] and if you have multiple inputs per cards [02:44] and what channels you want to setup [02:44] if we didn't run mythtv-setup, we'd essentially have to re-write it in ubiquity pages [02:45] so you're doomed to a horrible UI anyway [02:45] which we've already come up with 2 more pages than are there now as it is [02:45] can you at least run it before starting the install and then copy the configuration into /target? [02:45] interesting thought [02:45] i suppose that would work [02:46] though you might not be guaranteed that udev would scan the devices the same way on the install vs the cd [02:46] that's how ubiquity does everything else [02:47] true [02:47] if udev doesn't scan the devices the same on the install versus the CD, then it won't necessarily scan them the same way on every boot either [02:47] so that would make you screwed anyway [02:47] so if we wanted to install the mythplugins or something, we should just install them in the livecd and then remove them from if the user didn't want them? [02:48] err from the install [02:49] anyway - i have to run - but i'll be back on late [02:49] r [02:49] i hope you don't mind me picking your brains [02:50] o [02:50] you can do it either way, it's just generally simpler to have them in the live filesystem [02:50] ok [02:51] just have a shell script call 'apt-install ' at some point (yes, apt-install, not apt-get install) and ubiquity will sort out the rest for you [02:51] in the livecd environment? [02:51] if you want a package to be removable, then put it in /casper/filesystem.manifest but not in /casper/filesystem.manifest-desktop [02:51] (on the CD) [02:52] yes, in the live session [02:52] packages listed in both /casper/filesystem.manifest and /casper/filesystem.manifest-desktop will always be installed in /target [02:52] packages in just the first one will only be installed in /target if something apt-installs them [02:52] interesting [02:52] this is so that things like ubiquity itself can be removed [02:53] right [02:54] wow - I'm going to have to save this session for reference :) [02:54] ok - i'll def be back to ask more questions [02:55] thanks again for the help [02:56] no problem [03:15] jetsaredim_: depending on the question, I may be able to help you as well, if cjwatson is not around. === jetsaredim [n=jgreenwa@inet-nc01-o.oracle.com] has joined #ubuntu-installer [05:37] evand: any suggestions on tracking down my gtk problems [05:37] I'm running kde and i have the gtk2-engines-qt package installed [05:41] whoa, don't use gtkui.py if you're running KDE, use kde-ui.py instead [05:41] no no [05:41] my dev box is kde [05:41] not the livecd environment [05:42] I can't run glade on my dev box since gtk seems all messed up [05:42] oh, I suppose that would explain your problems [05:42] ask Riddell maybe [05:42] right [05:42] Riddell? [05:43] found [05:43] ok - will do [05:43] thanks === jetsaredim is extremely new to ubuntu/kubuntu