14:59:49 #startmeeting Fedora Packaging Committee 14:59:49 Meeting started Wed Nov 30 14:59:49 2011 UTC. The chair is spot. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:59:49 Useful Commands: #action #agreed #halp #info #idea #link #topic. 14:59:54 #meetingname fpc 14:59:54 The meeting name has been set to 'fpc' 14:59:54 Morning. 14:59:57 #topic Roll Call 15:01:34 I apppear to be lagging. 15:02:07 tibbs|h: not sure about that 15:02:33 My connection is going up and down. Good job, xfinity. 15:02:51 but but, pc world says they have the fastest internets.... :P 15:03:13 It's fast in short bursts. 15:03:17 hehe 15:03:27 okay, so i see tibbs and me... 15:03:33 Yeah, exciting meeting. 15:03:48 ping abadger1999, racor, limburgher, SmootherFrOgZ, Rathann, 15:04:07 * jsmith lurks, just because he's here 15:04:16 * limburgher here 15:04:21 I'm sort of here 15:04:43 from a mobile phone at work 15:04:43 * limburgher is distracted but trying ever to hard to focus 15:04:47 Given Panu's condmnation of %pretrans this morning, I'm wondering if we don't need to discourage its use in the guidelines. 15:04:50 s/to/so/ 15:05:11 tibbs|h: i haven't seen that yet, but i'm a bit behind on email at the moment 15:05:14 tibbs|h: I thought we did already, but maybe I'm remembering it elsewhere 15:05:24 We 15:05:29 said you have to use lua. 15:05:31 very busy, please ping me if you need my vote to break a tie 15:06:02 Too bad, too; I thought it was a clever solution to the problem. 15:06:48 well, i'll give it a few more minutes. 15:06:55 * racor was on the phone ... 15:07:24 okay, we have a very light agenda 15:07:39 so lets see if our 4.5 people will work. :) 15:08:02 #topic Fix confusing upgrade path examples - https://fedorahosted.org/fpc/ticket/121 - http://fedoraproject.org/wiki/User:Ferdnyc/PackagingEditTest 15:08:21 I'm the one who wrote the original examples, and I think this is a fantastic cleanup. 15:08:52 Yeah, those examples always were a bit cumbersome (no offense intended, of course). 15:09:03 none taken. they've confused me too. :) 15:09:07 Wow. 15:09:24 You know that bit in Wizard of Oz where she walk out of the house and it's all in color? 15:09:33 s/walk/walks/ 15:09:45 hehe 15:10:09 so, I'm +1 on this change 15:10:34 While we're in here, maybe we could think about why all the good stuff about what version/release to use is in the "Naming" guidelines. 15:11:14 Where would you rather see it? Not saying it shouldn't move, just curious. 15:11:31 In the "Naming and Versioning Guidelines" or whatever. 15:11:35 I.e. rename the page. 15:12:00 well, we can rename the page i suppose 15:12:01 But, yes, +1 on this cleanup. 15:12:06 Logical. 15:12:09 thats one of the older pages in the guidelines 15:12:22 i did add a helper link off the main page that goes right to this section 15:12:39 It's just that "why are the examples so confusing" and "why do I look in the naming guidelines for what to put in the version" are two of the more common questions I've had to answer. 15:13:00 Could somebody summarize this - I don't get it. 15:13:58 He's just fixing up the formatting on http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Pre-Release_packages 15:14:30 Although there is still a small bit of broken formatting in the draft. 15:15:28 tibbs|h: where? 15:15:30 Two tables are missing borders. 15:15:38 Though I don't know nearly enough wiki formatting to fix it. 15:16:05 The first table is missing the bottom border and the third is missing the top border. 15:16:18 Erm, no, that goes away when I resize the font. WTF? 15:16:26 yeah, i dont see that 15:16:30 Must be a language barrier: ... alsa-lib-0.9.2-0.6.rc1 (upgrade to 0.9.2rc2) ??? 15:16:55 racor: no, alsa-lib-0.9.2-0.6.rc1 -> alsa-lib-0.9.2-0.7.rc2 15:17:10 racor: if you read the table from top to bottom, it shows the upgrade progression 15:17:37 I mean, he didn't add any text. 15:17:54 tibbs|h: yeah, that's all my "awesome" original text, it is just formatted in a cleaner fashion 15:17:57 spot: yes, that's what I presumed, reading "alsa-lib-0.9.2-0.6.rc1 (upgrade to 0.9.2rc2)" standalone, at least to me is confusing 15:18:12 racor: i don't think it says that 15:18:37 wait, are you looking at the old page or the proposed new one? 15:19:35 spot: both - side-by-side - The citations are from the ... 15:19:51 now I get it ... I mixed up old/new ... 15:20:25 Yes, he added the "this is after upgrading". 15:20:30 Which does make more sense. 15:20:50 * abadger1999 awake now 15:21:08 So, i see +2 on this cleanup proposal 15:21:17 +1 15:21:47 +1 15:22:33 +1 15:23:11 #action Improved examples approved (+1:5, 0:0, -1:0) 15:24:30 tibbs|h: do you want to propose that we rename NamingGuidelines to NamingAndVersioningGuidelines ? 15:25:04 It's not a big deal; that name does seem a bit cumbersome. 15:25:17 But maybe add it to the title or something. 15:25:24 We could also split out VersioningGuidelines, but that would be more work. 15:25:44 i'll just add it to the title for now 15:25:55 mediawiki norm seems to be long names (and with spaces) 15:26:10 Redirects... Redirects everywhere. 15:26:22 * abadger1999 agrees with adding versioning to name 15:26:29 it is now titled "Package Naming and Versioning Guidelines" 15:27:20 BTW, are you keeping that version block up to date? 15:27:31 tibbs|h: no. it should be dropkicked out a back door. 15:28:00 that style dates to a time when i thought it might end up as packaged docs 15:28:16 i'm not sure what value there is in it when it is a wiki document 15:28:24 and the history/versioning is embedded in the format 15:28:43 the only page that i've kept current is the licensing page 15:31:05 so... 15:31:11 121 was the only ticket i had on today's agenda 15:31:24 i am going to send out the whenisgood today, i promise. 15:31:32 Oh, cool. 15:31:36 thanks :-) 15:31:44 usr move? 15:31:56 abadger1999: did that ticket get updated info? 15:31:58 Yeah, Panu dashed our plans for the usrmove thing. 15:32:14 "I STRONGLY recommend against using %pretrans in filesystem" 15:32:17 yes, we tried hard 15:32:21 but yum failed 15:32:29 well -- just the idea of moving the script into %pretrans 15:32:58 so, is there no way that we'll be able to handle yum upgrades here? 15:32:59 I think he's okay with just the warning that is proposed. 15:33:05 Yeah, seems there's no real way to do it without requiring a manual script run. 15:33:18 current plan: use http://fpaste.org/oxUu/ 15:33:24 from dracut 15:33:32 or rescue environment 15:33:44 dracut would be a simple kernel command line option 15:34:10 haraldh: is there any way we can be clever about this? 15:34:14 I would provide new F15 and F16 packages with the update script 15:34:32 haraldh: e.g. have dracut check to see if the filesystem is converted, and if not, run the script? 15:35:00 nah, you _have_ to upgrade to F17 afterwards 15:35:11 no "automatic" conversion 15:35:16 haraldh: no, hear me out 15:35:26 the script has to run _before_ the upgrade 15:35:29 to F17 15:35:32 ah yes. 15:35:48 maybe we can do some sort of nasty hack in yum 15:36:00 hmm, we could 15:36:21 i just think that having no method to handle this case is a recipe for a lot of flames 15:36:27 _but_ doing the upgrade in a live system is a mess 15:36:28 and if we can avoid that, it would be ideal 15:36:47 so, doing it from within the initramfs is a lot cleaner and failsafe 15:37:26 haraldh: maybe yum could check to see if the system is converted if it is trying to update a f16 package to an f17 one, and if it isn't, bail out and tell the user to run the script 15:37:27 just reboot once with that kernel command line option.. then you can "yum update" to F17 like you want 15:37:39 spot, that would be cool.. 15:38:06 that might even be able to be done in a plugin 15:38:17 but we have the "filesystem" guard in all conflicting packages anyway 15:38:50 the "critical" package list is actually very small 15:38:50 i still think that this problem needs a solution before we can go forward on this feature 15:39:03 solution is there 15:39:25 the filesystem rpm still has the lua check 15:39:37 and fails to install on an unconverted system 15:39:48 yes, but thats the problem 15:39:53 and all critical packages will have "Conflicts: filesystem < 3" 15:40:06 The lua check doesn't work. 15:40:10 it does 15:40:15 pretrans can't abort the transaction. 15:40:25 tibbs|h, correct.. but %pre can 15:40:30 and it does 15:40:37 Ah, OK. 15:41:16 okay.... so filesystem's %pre checks with lua to see if the filesystem is converted, and if not, it aborts the transaction and tells you to run the script? 15:41:23 yep 15:41:31 That seems to be a new thing since we last talked about this. 15:41:41 Perhaps that's the best we can get. 15:41:45 it's already in the FESCO ticket 15:41:55 2 weeks ago 15:42:12 why wouldn't we just run the script in %pre then? 15:42:25 same problem as in %pretrans 15:42:32 yum does some optimizations 15:42:40 ok 15:42:46 so, if the filesystem layout changes in between, we are hosed 15:42:50 what installs the script? 15:42:56 or will the user have to download it manually? 15:42:57 I would say dracut 15:43:06 it will be in the dracut package 15:43:11 F15 and F16 update 15:43:13 haraldh: looks like needconvert() in the script can bailout early if some of the directories are already links but not all. 15:43:16 okay. 15:43:35 abadger1999, correct... because then, it needs convert 15:43:56 abadger1999, it bails out early, if it needs convert 15:44:29 so, it seems like that explains how yum upgrades will be handled (the user will be prompted to manually convert the filesystem via the script, then afterwards, yum upgrade will succeed) 15:44:39 correct 15:44:52 I hope that message is very very clear. :) 15:45:08 s/convert the filesystem via the script/reboot with a special kernel command line option/ 15:45:22 so, the script is run from within the initramfs 15:45:36 this spares us nasty ld-linux-2.so tricks 15:45:40 haraldh: okay. 15:45:48 haraldh: ah got it -- || not && 15:46:46 haraldh: and you have tested this specific scenario (try to yum upgrade, get failure message, reboot with custom option, then yum upgrade successfully) ? 15:47:03 yes 15:47:21 https://fedorahosted.org/fesco/ticket/690#comment:12 15:47:24 okay, then it seems like the criteria has been met. 15:47:34 does anyone present (FPC) think it hasnt? 15:47:45 spot: and if not, a great scream will be heard from my house in a few months. :) 15:47:53 hehe 15:48:13 limburgher: i think it will be worse than that time we accidentally blew up alderaan. 15:48:19 in all out interest this will be tested very well 15:48:21 As long as the message is out there well enough, it should be OK. We can post this to the LiveUpgrade sig. 15:48:34 spot: Damn Fedora Orbital Laser. 15:48:47 Will we need to do any guidelines work for this besides saying "don't put stuff here; put it there instead"? 15:48:56 tibbs|h: not that i can see 15:49:43 so, i propose we lift the hold on this item 15:49:52 to whom do I have to talk about the mass conversion of the packages? 15:49:58 haraldh: fesco 15:50:00 ok 15:50:15 assuming you're not doing anything besides simply changing the paths 15:50:23 yep 15:50:26 nothing else 15:50:59 I assume this includes making sure rpm macros Do The Right Thing? 15:51:03 * abadger1999 still reading through the upgrade script 15:51:08 limburgher: well, i thought about that 15:51:18 If ever there was an argument for proper macro use in your spec, this is it. :) 15:51:19 limburgher: and i don't think we need to change the rpm macros at this time 15:51:19 haraldh: Do you care about the case where a mount has spaces in its name? 15:51:24 limburgher, I rebuild everything in mock first 15:51:31 spot: because of the symlinks? 15:51:35 limburgher: yeah. 15:51:36 Like /my\ old\ system/usr 15:51:49 abadger1999, did you find a line without quotes? 15:51:52 limburgher: and if we decide to rollback for some reason, i'd rather not have macro confusion 15:52:09 spot: Good point. And if it doesn't work. . .we'll find out. :) 15:52:10 haraldh: I'm just looking at ismounted() and I'm not sure it handles that 15:52:21 limburgher: if/when we decide to drop the symlinks, we can revisit the macros 15:52:23 abadger1999, ah, right 15:52:31 abadger1999, thx for the pointer 15:52:39 no problem 15:52:53 in dracut it is /sysroot 15:53:02 just wanted to be nice in the script 15:53:10 spot: 15:53:44 spot, limburgher: which macro exactly? 15:54:09 they are all fine with /usr 15:54:21 a lot of cruft will be removed from the specfiles 15:54:32 doing dirty symlink tricks in /lib* 15:54:40 and such 15:54:42 haraldh: well, there are quite a few macros that specify pathing 15:54:46 haraldh: Exactly. 15:54:59 e.g. %{__mv} 15:55:03 %{_bindir} for example. 15:55:05 ah, right 15:55:14 %{_bindir} is /usr/bin 15:55:29 yeah, i'm not thinking of the normal toplevel dirs 15:55:30 but %{__mv} yes 15:55:41 Compat symlinks should save us here. 15:55:44 mv is a perfect example. 15:55:48 tibbs|h: they will 15:55:52 tibbs|h: Right. 15:56:00 it would only be an issue if the symlinks ever disappeared 15:56:01 anyway.. the compat symlinks will not go away as long as "#!/bin/sh" is used :) 15:56:03 And fixing that now just invites pain if we have to un-fix it later. 15:56:07 and that would require a FHS change 15:56:15 so i think we're fine to leave it as is 15:56:22 and ld-linux-2.so is hardcoded with "/lib/" 15:56:24 changing it now would also cause heartburn in EPEL 15:56:46 no chance we will remove these symlinks in the next years 15:57:23 so, i'm +1 on lifting the hold here 15:57:41 Yes, I think we're done here. 15:57:43 +1 15:57:44 +1 15:58:16 +1 15:58:56 racor, Rathann, we need one more +1 16:00:42 -1 16:00:56 racor: okay. 16:01:18 Rathann, rdieter (if you're around), we still need your votes 16:01:25 So what of the requirements we put to them last week have they not met? 16:03:47 FWIW, this makes me nervous and I'm still +1 because I think it's being done carefully. 16:04:39 This isn't something we can stop anyway. We can only make sure the packaging guidelines part is done correctly. 16:04:46 And it appears that we've done that and more. 16:06:07 tibbs|h: well... we might be able to stop it anyway... but there's probably a greater chance of that if we were unanimously against it rather than just a few -1 votes. 16:06:17 which we are not at this time. 16:06:21 Well, just one unexplained -1 votes. 16:06:26 Exactly 16:06:40 Not that I expected that we'd get any sort of explanation. 16:06:53 But I have short ribs to get in to braise, so.... 16:07:11 geppetto: we're voting to lift the hold on the /usrmove item 16:07:12 haraldh: If the script encounters a / directory that's already a link; it should probably warn the user that they may have to convert that one manually. 16:07:31 spot: ok … not #121 then? 16:07:36 no, 121 was approved 16:07:42 I thought the hold was just on the packaging changes? 16:08:01 Well, policy/documentation of packaging changes 16:08:13 Can we actually stop it? 16:08:20 abadger1999, yes 16:08:26 geppetto: the criteria for the hold was that the script be reviewed, the yum update scenario be understood, and that it be tested 16:08:43 geppetto: this vote is to state that the criteria has been met and the hold should be lifted 16:09:21 geppetto: vote count is at +1:4, 0:0, -1:1 16:09:38 So … my understanding is that unless someone finally fixes rpm to allow dir. => symlink moves … there's not going to be a yum upgrade path, and doesn't require running magical scripts and hoping 16:10:37 OK, to avoid further misunderstandings: I consider /usrmove to be a crime against Linux and Unix. I cannot arrange it with my conscience to support it. 16:10:49 geppetto: As it sits, with the script, there is a yum upgrade path. 16:11:14 geppetto: basically, yes. yum upgrade will try to run, hit the %pre in filesystem, which checks for conversion, then when it finds it hasn't been done, bails out and tells the user to reboot with a custom command line option. 16:11:23 limburgher: Running something else is not a yum upgrade path, IMNSHO 16:11:23 then dracut does the conversion, and boots up 16:11:39 then the user reruns yum 16:12:01 racor: I agree, though not so strongly, but I feel that important that the thing I disagree with is at least done well. 16:12:02 The words "Epic." and "Fail." come to mind. 16:12:24 geppetto: okay... so how do we make yum handle this? 16:12:42 geppetto: They seem determined, and I think this is the best that's possible with the tools as they are now. 16:12:52 With the info. we have now … must convert all users, must use external script … we can't. 16:13:31 Plus rpm's inability to move from dirs. to symlinks. 16:14:09 I wonder why that problem seems unfixable. 16:14:24 haraldh: okay, I'm done reading through the script -- those were the only two things I saw that could be changed. 16:14:29 I think it's just in a piece of rpm nobody wants to look at (and esp. change). 16:14:35 abadger1999, thank you 16:15:29 geppetto: so, your point is that rpm would need to support moving from dirs to symlinks before you would consider this hold criteria met? 16:16:44 No, there are a few ways around it: 1) Don't require all users move, so new installs have symlinks and old users have dir. plus a file symlinks I guess. 2) Find some way to stick the conversion in the packages. 3) Fix rpm. … 4) ?? 16:16:59 #1 is directly against what notting wanted, though 16:17:09 i don't think anyone has come up with a way to do #2 safely 16:17:33 the safest way is to do it in dracut, it seems 16:17:50 Yeh, I guess the problem is just that the dirs. are so core to everything … as I thought people had done dir. => symlink moves with magic scriptlets before. 16:18:01 * spot wonders if it is possible to offer some sort of command to reboot into the migration mode. 16:18:10 I don't see how that helps. 16:18:28 well, it makes it less likely to fail if it is "sudo f17-migrate" 16:18:49 From the yum POV if you can't just run "yum upgrade" … then it doesn't really matter if you have to run preupgrade instead. 16:19:08 You've already failed all expectations etc. 16:19:12 geppetto: i definitely see that, but i also don't see how it is possible to just run yum upgrade 16:19:19 geppetto, what's the thing? you have to reboot anyway.. 16:19:22 so if that isn't possible, this is the next best thing 16:19:57 geppetto: See gallery2 16:19:57 * geppetto shrug … fine, +1 then … I'll try not to care. 16:20:02 spot: grub (not sure about grub2) has some sort of boot once setting so it is possible.... not sure if it's desirable though 16:20:42 abadger1999: if for no other reason than to make it very simple and less likely to fail when the user doesn't remember what the magic option is when the system reboots 16:20:52 someone better put "Do _not_ use 'yum upgrade'" in the release notes 16:20:56 And the announcement. 16:21:10 geppetto: == epic fail 16:21:23 geppetto, it's not officially supported anyway, isn't it? 16:21:28 geppetto: well, if it says "don't use yum upgrade before you have converted the filesystem via this method: ...", isn't that the same thing? 16:21:42 haraldh: So in the yum upgrade case -- what's the exact steps to make things work? 1) Update to new enough dracut 2) ? 16:21:55 here now finally (reading backlog) 16:21:57 2) recreate the initramfs 16:22:06 3) reboot with kernel command line option 16:22:10 haraldh: There's a difference between every previous release, where we didn't test it as much but it worked … and F17-F19 where we know it'll fail completely. 16:22:12 4) yum upgrade 16:22:46 geppetto, after some manual steps it works, also 16:22:58 without anaconda or preupgrade 16:23:00 geppetto: But the idea is that if the user does A then B then C and then yum upgrade, it will. 16:23:10 spot: I'd rather not … just tell people to use preupgrade because we know it doesn't work. 16:23:26 preupgrade is recommended of course 16:23:37 or running upgrade from the DVD 16:23:41 or USB stick 16:23:51 haraldh: These days SUSE and Ubuntur encourage on-the-fly upgrade, only the "bleed edge" distro Fedora fails to support it. 16:24:09 suse works on the same issue already :) 16:24:11 racor, wait until Debian switched to /usr 16:24:14 limburgher: When what you have to do ammounts to just running preupgrade anyway, but with much more chance of it going wrong … it seems like a bad idea to pretend that it can work. 16:24:16 Plus I've been live yum upgrading since FC2, why stop now? :) 16:24:20 they need to kill the mindless / vs. /usr split too 16:24:21 suse works on the /usr switch also 16:24:21 haraldh: k. And does the yum upgrade needs to run in the special boot? Or can you reboot into the normal system before yum upgrade? 16:24:29 they wait for us, they say :) 16:24:32 geppetto: But it won't take as long as preupgrade. 16:24:35 abadger1999, normal system 16:24:46 limburgher: If we just tell everyone "we know we've broken yum upgrades, don't use them" … we have a much better chance of all the users coming through it. 16:24:47 col. 16:25:32 limburgher, if you reboot with that option, you can yum upgrade to F17 also 16:25:43 so, what is the thing here? 16:25:46 haraldh: Before Debian switches to /usr, Fedora will be dead and Ubuntu be overrun by Mint. 16:25:49 * spot notes that we are at +1:4, 0:0, -1:1 on lifting the hold 16:25:58 spot: I said +1 above 16:25:59 spot: count me +1 16:26:04 okay. 16:26:22 #action Hold lifted. (+1:6, 0:0, -1:1) 16:26:39 haraldh: please try to document this clearly and thoroughly. 16:26:52 spot, of course 16:27:05 okay, i think we're done for today. 16:27:09 thanks everyone 16:27:13 thanks 16:27:13 #endmeeting