[00:12] I'll try my best to review this in a bit [00:35] Eh, don't worry about it now, it's not really work-able yet. I mean you can if you want but you're going to get to the end and go "oh lol that won't work". I'm still working on that part, though you can review the earlier bits and see if I made any boffos. [00:37] No worries. I have quite the night ahead of me anyway heh [01:10] Oh fun, turns out that xdotool search --pid isn't guaranteed to work. Alright, so... [01:11] `xdotool search --name "Full Upgrade"` does the trick, but are there possibly other programs that will have the title "Full Upgrade"? [01:12] Also, are you sure that's only going to ever say Full Upgrade? [01:12] If you check the source, there's an option where it can just be "Upgrade" [01:13] Ah, never mind, the PID metadata is properly set. False alarm. [01:13] Er... whatever it's called. [01:13] Nice heh [01:13] xdotool search --pid works in this instance. [01:13] It doesn't work everywhere, but right here it does the trick. [01:18] `ps axu | grep lubuntu-upgrader` -> `ps axu | grep lubuntu-upgrader | grep -v ps` or similar lol [01:20] What does "grep -v ps" do? [01:20] /usr/bin/lubuntu-upgrader --version this works, it's cool and all, but remember that the script you're writing could very well be called with the current package version in it [01:20] Oh wait, "-V" vs "-v" nvm... [01:20] arraybolt3[m]: Take out all entries that patch ps [01:20] tsimonq2: Very true. You'll notice that I planned for that if you look closely. [01:20] In fact that's the line that does the planning. [01:21] If the version is not 0.5.1, then it's bad and it dies. If it is 0.5.1, it exits silently and everything goes as normal. [01:21] (This does require that we remember to remove the postinst script in the next release of lubuntu-update-notifier, though.) [01:21] I was just going to ask about that :) [01:22] Oh but actually I have a logic error. [01:22] I put != where I needed =. 🤦 [01:22] And I needed some quotes. [01:22] OK so you'll be seeing a new iteration soon-ish. [01:23] Sweet, also pstree is a thing [01:23] arraybolt3[m]: Actually removing the postinst script later is dangerous, what if the user skips over 0.5.1 during an upgrade and installs 0.6? Grr... I'll need some more robust logic there then, since this is a script we'll have to live with for until 22.04 is gone. [01:25] "`ps axu | grep lubuntu-upgrader`..." <- Nice, I think `ps axu | grep lubuntu-upgrader | grep -v grep` does what I want. [01:29] * arraybolt3[m] sent a code block: https://libera.ems.host/_matrix/media/v3/download/libera.chat/125a31cd82d47afe14cb9139dc3ab4f33a4dc2f8 [01:29] * ```... (full message at ) [01:33] Oh fun, now I spotted an infinite loop (failed to increment counter). Fixed that locally. [15:56] Good morning [15:57] * tsimonq2 throws a few gallons of Karuba Gold coffee at teward [15:57] teward: oh hi I've given you your sacrifice :P [15:57] teward: How is task management? :P [15:57] * genii holds out his empty mug at teward [18:23] [telegram] *gives genii some coffee* [18:23] Yay caffeine [18:23] [telegram] tsimonq2: my need for sleep for health trumped deployment [18:24] [telegram] so now, dayjob. then more work [19:16] * arraybolt3[m] yawns, waves, trips, and knocks teward into Simon [19:19] [matrix] Guess it's time for me to get fully fed and caffeinated before the meeting comes around. [19:20] [matrix] Also gonna do some quick updates on the tech stuff. [20:33] Dan Simmons: Heya, you around? [20:36] Alright, I think I'm pretty well set up. [20:36] * arraybolt3[m] uploaded an image: (390KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/kAByFhUPzMacjvZglIRmtESj/image.png > [20:48] [telegram] I also believe it (re @lubuntu_bot: (irc) Alright, I think I'm pretty well set up.) [20:48] @Roberalz: :) I figured if I'm allowed to pull up documentation, may as well pull up virtually every single thing I could need beforehand. [20:49] I guess I could boot up a Jammy VM for just in case any pop questions come up involving knowledge of where stuff is in a typical Lubuntu installation. /me does that [20:56] Do we still have a meeting bot in here? [20:56] We did last time we did a Lubuntu Standup. [20:56] (Speaking of which, we did that once and then forgot about it, we should do that again.) [20:59] #startmeeting arraybolt3 for ~lubuntu-dev [20:59] Meeting started at 20:59:44 UTC. The chair is tsimonq2. Information about MeetBot at https://wiki.ubuntu.com/meetingology [20:59] Available commands: action, commands, idea, info, link, nick [21:00] * arraybolt3[m] powers on battle suit [21:00] arraybolt3 @arraybolt3:matrix.org: Hi, please introduce yourself. [21:00] OK. [21:02] My name is Aaron Rainbolt. I am a developer in my free time with a passion for using and enhancing Linux. I spend a lot of time helping others with their Linux systems, helping to develop Lubuntu, and planning future projects related to the Linux ecosystem. I've loved working with the Lubuntu team so far and hope to continue to for as long as I can. [21:03] Hey! Before we begin, do we have a majority of Lubuntu Developers? [21:03] I am here. [21:04] Dan, you can start with the first question [21:04] Sounds good. [21:04] What is Ubuntu delta and why might we want it? [21:05] An Ubuntu delta is a difference in the packaging between a Debian package and the Ubuntu package it is based on. Ubuntu deltas are generally kept to a minimum, but may come in handy when there is a critical difference between how Ubuntu does something and how Debian does it with the same software package. [21:06] It may also be useful in the event Ubuntu releases a Stable Release Update for a particular software package without changing the rest of the package dramatically (for instance, in a backported security or bug fix). [21:07] Technically, the Ubuntu delta is the diff between a Debian package and its corresponding Ubuntu package, generated with debdiff, I believe. [21:07] (Tar, I misphrased the start, it's the difference between an Ubuntu package and the Debian package it is based on. Ubuntu is based on Debian, not the other way around.) [21:08] Dan, if that answers your question, I'll move onto mine :) [21:08] I am good, thanks. [21:09] What is Feature Freeze and Beta Freeze respectively, and why are they important? [21:11] Feature Freeze is the point at which new packages, features, and APIs are stopped being introduced into the current development release of Ubuntu. It is the time when we concentrate on fixing bugs in the development release. There isn't a freeze of the upload queue during this time. Exceptions may be granted if a change contributes to a high priority feature goal, if it contains only bug fixes, or if it is warranted due to other [21:11] exceptional circumstances. [21:13] Beta Freeze is a much more intensive freeze that occurs just before the beta ISOs of the development release are created. At this point, no new features, user interface changes, documentation strings, kernel features, or hardware enablement changes are allowed. [21:13] (It isn't quite as intensive as Final Freeze, however.) [21:13] A quick followup question if I may, what are the differences in "intensity" that you're specifying in terms of what lands in a queue and what goes straight into the Ubuntu archive? [21:14] The intensity differences are how tightly the archive is frozen - can something just be uploaded and go straight into the archive or a queue, or does it need a special exception for it to go through? [21:14] The more that things need exceptions, the more intensive the freeze. [21:15] There's a slightly more nuanced answer to that question that does not directly affect my vote, follow up after [21:15] I'm satisfied [21:15] Back to Dan :) [21:15] I have a follow-up to that too. [21:16] What team reviews the exceptions referenced in the Freeze period? [21:17] For Beta Freeze, it's the release team. I'm not sure about the other freezes, I can look that up however. [21:17] I'm good with that answer. [21:17] Simon? [21:19] What does ${misc:Depends} do and why is it useful? [21:20] I know I've read the docs for that, one moment... [21:21] According to the Debian documentation, some debhelper commands may cause the generated package to depend on some additional packages. Each of these commands generate a list of the required packages for each binary package. ${misc:Depends} is substituted with that list. [21:21] (Drawing from https://www.debian.org/doc/manuals/maint-guide/dreq.en.html) [21:22] I'm satisfied with that answer. Dan? [21:22] What does it take for a package to be considered a valid candidate for proposed migration? [21:24] The package must: [21:24] 1. Be built and published on all architectures it is currently published for in the release pocket. [21:24] 2. Have all of its dependencies satisfied by packages that are either in the release pocket or by packages that will be installed at the same time. [21:24] 3. Pass all autopkgtest test suites (or have any failures be ones that have always failed). [21:25] (For 1, it is acceptable if other binaries from the same source for the same architecture are up to date in -proposed, and the binary in question has been removed.) [21:25] Great, thanks. [21:27] Let's say the Ubuntu archive is open. Please provide two examples of when it would be a bad time to upload a new LXQt stack [21:28] Hmm... [21:28] One example would be if it could cause problems with other large transitions occurring at the same time (clogging up the queue too much). [21:28] Another example might be if a dependency needed for the new LXQt stack is not yet in either -proposed or -release, but in that instance one would probably get local build failures before uploading the packages to the archive. [21:29] Answer one is what I'm looking for, I'm looking for a more general example than answer two [21:29] (So please provide one more if you could) [21:30] I guess another bad time would be if a package in -proposed is currently having trouble migrating and the new LXQt stack depends on that package, as that would result in a partial stack migration and break LXQt for users of the development release (like me!). [21:31] Okay, I'm good. I would have also accepted "when the autopkgtest queues are backed up"... :) [21:31] On to Dan [21:31] What is a SRU and when would it be warranted? [21:33] A Stable Release Update is a change made to a package in an already-released version of Ubuntu. Stable Release Updates are not to be used for overly large changes, as that comes with a significant regression risk, and released versions of Ubuntu must remain stable for their existing user base. However, for high-impact bugs and security problems, a Stable Release Update can be used to fix the bug so long as it comes with a [21:33] sufficiently low regression risk, a good test suite, and a good reason to do the update. [21:34] (Some stable release updates may be appropriate for things like LTS hardware enablement, certain new features for LTS releases that can be safely introduced, and bug fixes with an obviously safe patch. This isn't an exhaustive list.) [21:34] Thanks, I'm good with that. [21:36] Simon, do you have any more? [21:36] Give me a second to find this one, I'll let Dan ask another one in the meantime [21:36] I have two more [21:36] I think the first of the two deserves exact text :P [21:36] Ok [21:37] What is MoM and how is it helpful? [21:38] MoM (or Merge-o-Matic) is an automated tool that assists in bringing new packaging changes from Debian into Ubuntu while preserving Ubuntu deltas. Due to its nature as an automated tool, it should not be trusted blindly to do the right thing, however it can help ease the maintenance burden when an Ubuntu delta must be preserved and cannot be upstreamed into Debian and dropped. [21:39] Thanks. [21:41] Let's say LXQt upstream releases a piece of software named lxqt-funstuff. The license isn't standard, but states "You may use this software in source and compiled form as you wish, but you must send me a postcard at the mailing address listed below:" [21:41] Is this permissible to distribute in Ubuntu? [21:41] And as a small followup, is it permissible to distribute files with no license whatsoever in the Ubuntu archive? [21:44] When encountering a non-standard license, it would be necessary to match it up against the Debian Free Software Guidelines to determine if it complied with them or not (though this may not be something someone with limited legal knowledge can do safely). In this particular instance, I believe this license would not be DFSG-compatible, as it would not allow free redistribution, the very first point of the DFSG. [21:44] No, it is absolutely not permissible to distribute unlicensed files in the Ubuntu (or Debian) archive. Such files must be assumed to have all rights reserved by the copyright owner. [21:45] Perfect. Dan, do you have any more questions? [21:45] I am good at this time. [21:46] Sounds good. Here goes my next question... [21:46] When should you tag an upload in its packaging Git repository? [21:46] * arraybolt3[m] looks up docs in Phabricator [21:47] Only once the upload is accepted, the release commit must be tagged with ubuntu/VERSION, where VERSION is the full Ubuntu version. [21:48] Sweet. One more question, I've saved this for last... [21:49] Where do you see Lubuntu in 2 years? [21:51] In 2 years, I hope that as people migrate away from Windows 10 in preparation for it to go EOL, those with lower-end hardware discover Lubuntu and use it to keep their current hardware alive rather than throwing it away. I would like to see it become one of the best Windows alternatives in the Linux ecosystem, as we continue to polish it, stabilize it, and enhance it to work for both power users and non-power users out of the box. [21:52] (I also personally hope to see it work on those pesky Windows 8 netbooks with 32-bit UEFI and a 64-bit CPU by then :D) [21:52] That's all I have. Time to vote... [21:53] #vote Add ~arraybolt3 to ~lubuntu-dev [21:53] Please vote on: Add ~arraybolt3 to ~lubuntu-dev [21:53] Public votes can be registered by saying +1, -1 or +0 in channel (for private voting, private message me with 'vote +1|-1|+0 #channelname') [21:53] #voters kc2bez, tsimonq2 [21:53] Current voters: kc2bez, tsimonq2 [21:53] (And teward's proxy vote) [21:54] +1 [21:54] +1 received from tsimonq2 [21:54] +1 [21:54] +1 received from kc2bez [21:54] teward gave a +1 via proxy [21:55] #endvote [21:55] Voting ended on: Add ~arraybolt3 to ~lubuntu-dev [21:55] Votes for: 2, Votes against: 0, Abstentions: 0 [21:55] Motion carried [21:55] Congratulations arraybolt3, you are now a Lubuntu Developer. [21:55] #endmeeting [21:55] Meeting ended at 21:55:36 UTC. Minutes at https://ubottu.com/meetingology/logs/lubuntu-devel/2022/lubuntu-devel.2022-12-08-20.59.moin.txt [21:55] Congratulations!!! [21:55] Congratulations arraybolt3[m] & well done. [21:55] Me and my best friend are cheering over here \o/ Thank you guys! [21:56] guiverc: Thank you, and thank you for helping me come on board in the first place! [21:57] Dan Simmons: Could you please add him to the Launchpad team? [21:57] CONGRATULATIONS arraybolt3 !!!!! [21:57] I will make the necessary changes this evening on Launchpad. [21:57] 👍️ [21:57] * arraybolt3[m] breaths a deep sigh of relief, I was pretty apprehensive when the vote started :P [21:58] Sounds good. It can be anyone from the Lubuntu Council, and the motion was carried. :) [21:58] Next stop: MOTU? 👉👈 [21:58] XD [21:59] I wish I had looked up Beta Freeze rather than guessing at it, I didn't see a link to it on the Kinetic Kudu release schedule and so I used everything around it to try and figure it out, then Googled it and found out there was a Wiki page on it. I see why there was a more nuanced answer than the one I gave, so I'll be able to remember that later. [21:59] Oh yeah, so [21:59] Beta Freeze is for seeded packages and that list is manually generated [21:59] Final Freeze includes non-seeded packages [22:00] tsimonq2 & kc2bez[m] I just added arraybolt3[m] (as per tsimonq2's council comment), tsimonq2 please check it's correct [22:00] Brand-new packages don't need an exception, FYI. [22:00] Also, I did see one time when the Release Team wasn't the only ones who could let something through a freeze, the translators may be involved for the Documentation String Freeze. [22:00] [telegram] yeah there's a few exceptions for certain things through freeze [22:00] [telegram] most have TB /Release Team exceptions [22:01] guiverc: Thank you, I can confirm this looks correct :) [22:01] [telegram] or exceptional cases [22:01] Eickmeyer[m]: One of my favorite loopholes XD [22:01] Eickmeyer[m]: Oh good grief, this was hard enough, I don't even want to think about the MOTU grilling right now 🤣 [22:02] thanks tsimonq2 ; fyi kc2bez[m] [22:02] arraybolt3 @arraybolt3:matrix.org: If you have the time, I can walk you through uploading your first package to the archive? [22:02] tsimonq2: Hrumph, nobody walked ME through that... [22:02] I definitely would love a walkthrough. It's similar to uploading to a PPA, I would assume? [22:03] arraybolt3[m]: Meh, this was probably one of your most difficult grilling [22:03] [telegram] tsimonq2: just make sure it's something that lubuntu-dev has access to upload to [22:03] [telegram] or i'mma be annoyed xD [22:03] [telegram] (so would release team xD) [22:03] arraybolt3[m]: Yep. You had a few packages in mind? [22:04] (As in, waiting in the "can you review and upload please?" queue) [22:04] Lemme scan through Gitea real quick and take a look. [22:04] I have several pushes to ubuntu/lunar that I don't think have been uploaded yet. [22:05] Bah, where's notes.lubuntu.me when you need it... [22:05] @teward001 That process is still automatic once you add someone to a team, yeah? [22:06] [telegram] it should be but it might be delayed [22:06] Alright, libqtxdg-packaging it is! Looks like that one isn't uploaded yet, lemme verify on Launchpad. [22:06] https://git.lubuntu.me/Lubuntu/libqtxdg-packaging/src/branch/ubuntu/lunar/debian/changelog# [22:06] [telegram] infra issues so once he's added give it like 30 minutes [22:07] [telegram] Congratulations!!!!! (re @lubuntu_bot: (irc) Me and my best friend are cheering over here \o/ Thank you guys!) [22:07] @Roberalz: Thank you! [22:07] OK, yeah, that one needs uploaded. [22:09] arraybolt3[m]: Cool. The usual `debuild -S -d` (not `-sa` because you don't need the source with it), should kick out a source.changes file [22:10] And if the email address you used isn't on your GPG key, you'll have to manually give it a keyid [22:10] Yeah, my GPG key uses my gmail address but I now use my Ubuntu address, so I have to -us -uc my debuilds and then debsign them after the fact. [22:10] (Though I think I should drop -us this time?) [22:10] Otherwise it's dput ubuntu for pure FTP, and dput ssh-ubuntu for SFTP. [22:11] arraybolt3[m]: I'd say drop both of those [22:11] Just do -kMYKEYIDHERE [22:11] Wait you can do that with debuild? TIL! [22:11] * arraybolt3[m] tries it [22:11] No space in between the k and your key ID [22:11] Yeah you have to use that when sponsoring ;) [22:12] I always leave them unsigned and then use debsign to fix them, this is handy to know. [22:13] tsimonq2: Is there any particular reason to use one of those over the other normally? [22:14] I mean, practically, nah, still signed by your GPG key [22:14] Is it reasonable to believe FTP will go away soon enough? Yeah [22:14] I always use ssh-ubuntu if I'm on my personal machine [22:15] [telegram] i mean i changed my dput configs in dput-ng so my ubuntu uploads only go sftp/ssh ;) [22:15] [telegram] but i'm chaotic that way [22:15] That makes sense. Speaking of which, I should probably back up my SSH key. I keep a lot of my systems backed up but I keep not doing it on my main rig thanks to forgetfulness, busy-ness, and I guess a lack of care about most of the data I use since all the important stuff is elsewhere anyway (except for that SSH key!). [22:16] I mean I could just make a new key but that would require some fixing to be done for some of the stuff I use. [22:16] Oh yeah, dput-ng is a thing... It looks different but will e.g. prevent ~ppa1 from going into Ubuntu [22:16] arraybolt3[m]: Two backups, one on-site and one off-site ;) [22:17] That's the way. [22:17] Though I'm not sure I want my SSH key on other people's computers. [22:17] Indeed [22:18] Same with your GPG, that thing is now dangerous to have lol [22:18] (My GPG key has a monster password on it, but my SSH key, not so much so...) [22:18] (Though my SSD also has a monster password on it so it's safe.) [22:19] Remember... you also have direct upload access to Backports. Try to use Backports Staging first and ask for a second set of eyes, but you're also welcome to participate in that directly now [22:19] * Remember... you now also have [22:20] There is no Britney there... so be VERY careful please :) [22:20] Only for lubuntu packages, right? Or is it possible to accidentally make a mistake and foo-foo something else if I get tired? [22:20] Eh, if I need to be very careful I'll avoid uploading to -backports if I'm tired :P [22:21] Really I shouldn't upload anywhere except maybe to a PPA if I'm tired. [22:21] Well, you have the ability to upload whatever package to Backports. In the archive you only have upload access to Lubuntu packages [22:22] Oh yikes. I'll avoid doing that for now, that sounds way too risky. [22:22] Also, you're now technically an Ubuntu Developer too. So you're now part of the team collectively responsible for making sure all the tooling works :P [22:23] Meh, these are the only bits: https://code.launchpad.net/~ubuntu-dev/+git [22:23] So like, the sponsorship queue, (I think?) MoM, ubuntu-dev-tools, all that [22:24] Sounds fun and a bit scary since I've never handled that part before. [22:25] Something you're probably going to need to use quite a bit, since you're only a "Per Packageset Uploader" is ubuntu-uploader-permission, in ubuntu-dev-tools [22:25] So, for example, you probably don't have upload access to grub2 (if you do, that's a bug lol) [22:26] But you should have upload access to libfm-qt now [22:26] If I have access to grub2 something is horribly wrong. Let's just say I won't try :P [22:26] tsimonq2: ubuntu-uploader-permission? This is a new term to me. [22:26] Well hey, it's your key signing your uploads now; I'm happy to peer review, but the release team looks at you :P [22:26] arraybolt3[m]: Just a CLI tool [22:27] I don't have that tool on my system even though ubuntu-dev-tools is installed... [22:29] Oh wait there it is, just didn't have a man page I guess. [22:30] Simon Quigley: So it looks like it tells you who has permissions to upload to a particular package? [22:32] Well, it also tells you if you have those permissions :) [22:32] Nice, that sounds handy. [22:34] Yeah :) [22:34] So... did you try uploading? heh [22:36] Thanks guiverc [22:36] "breaths a deep sigh of relief, I..." <- You did great! [22:37] Not yet, Hold:Personal_Life_Needs_Me [22:37] Gimme just a sec. [22:37] kc2bez[m]: Thank you, I'm glad you guys were willing to help me so much through all of this! [22:39] [matrix] Of course. [23:19] OK, I'm back. [23:21] It looks like lxqt-build-tools actually could use uploading first, so I'll start there. [23:22] arraybolt3: I sent you a "welcome to the club" PM with some additional details :) [23:22] * tsimonq2 dinner shortly... [23:29] [matrix] @arraybolt3 don't ever be afraid to ask questions. We were all new at one point. [23:29] Way better to ask and not need to than need to and not! [23:30] [matrix] Exactly [23:30] * arraybolt3[m] cracks knuckles and prepares to upload lxqt-build-tools carefully... [23:40] At my old $dayjob, I heard something from a customer when I was training a new employee that will always stick with me... "Even the President has a first day on the job." [23:41] Heh, true. [23:41] OK, the upload took, now I'm looking for it. [23:41] [matrix] \o/ [23:42] https://launchpad.net/ubuntu/+source/lxqt-build-tools/0.12.0-0ubuntu2 Woohoo! [23:42] Perfect :D [23:42] Just be sure to keep an eye on https://people.canonical.com/~ubuntu-archive/proposed-migration/update_excuses.html if it doesn't migrate on the next Britney run [23:42] [matrix] Nice! [23:43] (If you didn't know already, running date -u in the terminal will give you the time in UTC, which you can then use to look at Britney logs :P) [23:43] Ooo, didn't remember that! I think you showed me that before?, but I forgot. [23:43] Maybe :) [23:44] Either way, Britney runs have been taking a while recently heh [23:44] With you being in Central US time, I'd call it like... meh, 9 or 10 PM for what Britney thinks on it [23:45] Right now it's just before noon UTC, so OK, that's handy. [23:45] https://people.canonical.com/~ubuntu-archive/proposed-migration/log/lunar/2022-12-08/ also has old logs (you can ignore notest, those are simulated runs) you can use to get some timing references on [23:46] * arraybolt3[m] makes some notes [23:46] [matrix] Erm, I think went in the wrong direction there. [23:47] Oh yeah... not noon, midnight UTC XD [23:47] lubot: Oh right, thanks AM/PM time X-( [23:47] * arraybolt3[m] hates modern time and date systems [23:48] [matrix] Time is hard to math. [23:48] I one time tried to make a calculator for figuring out various things about time, including dealing with the difference between B.C. and A.D. and coping with the fact there was no Year 0. I ended up giving up :P [23:49] [matrix] XD [23:49] Just use python3's timedelta :P [23:49] The amount of times I've had to solve a math problem and I just do it in the Python interpreter... :P [23:49] I was on Windows Vista with .NET Framework 4.0.30319 I believe, I didn't have that :) [23:49] Darn ;) [23:50] Anyway, I'm going to jet for dinner, I'll be back in a bit :) [23:51] 👋 Sounds good, see you later! [23:51] arraybolt3: If you have questions feel free to ask, otherwise this is my friendly reminder to tag your uploads and push the tags once they hit the archive ;) and make sure to watch Britney! [23:51] I think I've got it, if update-excuses breaks my brain I'll let you know. Thank you so much! [23:52] Of course :)