Re: Removing more packages from unstable

2024-08-21 Thread Steve McIntyre
Noah wrote:
>On Tue, Aug 20, 2024 at 11:09:51AM +0200, Bastian Venthur wrote:
>> I think popcon does give a good approximation of how much percent of people
>> installed a certain package even if not everyone uses it, don't you agree?
>
>No, definitely not.  There are hundreds of thousands of Debian systems
>running in various cloud environments, and I'd be surprised if any of
>them have ever submitted popcon data.
>
>> Last time I installed Debian it was still enabled by default.
>
>Oh? I don't think it has ever been enabled by default.

It hasn't been AFAIK, no. d-i always asks, with the default being "no".

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Can't keep my eyes from the circling sky,
Tongue-tied & twisted, Just an earth-bound misfit, I...



Re: what about Netplan?

2024-07-14 Thread Steve McIntyre
Luca Boccassi wrote:
>
>Networking is not static, it constantly changes in the kernel,
>sometimes in dramatic and incompatible ways.

Sorry, but no. Networking clearly is *not* changing that fast, in
software terms. Many old tools still continue to work just fine after
a decade or more.

>A widely used, well maintained stack with large amounts of
>contributors is fundamental for the default choice, because we have
>to keep up, as the rest of the world will not sit and wait for us.
>
>Here's some stats from 'git shortlog --after="2021-12-31" -sn --all'.
>In the last ~2.5 years, in netplan.io's github repo, there are only 2
>contributors with more than 100 commits, and 2 with more than 10, and
>2 of them are Canonical employees:
>
>   569  Lukas Märdian
>   310  Danilo Egea Gondolfo
>39  Simon Chopin
>38  Danilo Egêa Gondolfo
>11  Robert Krátký
>
>Same stat, for the same period, for systemd:
>
>  6650  Yu Watanabe
>  5415  Lennart Poettering
>  2884  Luca Boccassi
>  2772  Zbigniew Jędrzejewski-Szmek

...

>3 companies and one independent in the 4 digits, and too many to be
>bothered to check between 10 and 999 commits.

I understand what you're trying to say, but that's a disingenuous
comparison. systemd is a massive (some would say *too* massive)
project with fingers in many pies. How many of those people have
touched *networking* bits?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Can't keep my eyes from the circling sky,
Tongue-tied & twisted, Just an earth-bound misfit, I...



Re: Mini-DebConf in Cambridge, UK - October 10-13 2024

2024-06-24 Thread Steve McIntyre
On Mon, Jun 24, 2024 at 12:18:56PM +0200, somebody *claiming* to be Luna 
Jernberg wrote:



Just to be 100% clear, that mail didn't come from Luna's normal gmail
account but was instead spoofed and sent via emkei.cz, a "free online
fake mailer". It's now blocked from Debian lists.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"...In the UNIX world, people tend to interpret `non-technical user'
 as meaning someone who's only ever written one device driver." -- Daniel Pead



Re: Debian

2024-04-19 Thread Steve McIntyre
You've written a lot of text here in a few mails, replying to yourself
several times. This is not a positive pattern.

On Fri, Apr 19, 2024 at 11:58:18AM +0200, José Luis González González wrote:



>> There are similar issues with boa and dhttpd, and it seems Apache is going 
>> that way.
>
>nvi adds to the subversive ones, with bash, etc.

What on earth do you mean by "subversive" here??

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"Arguing that you don't care about the right to privacy because you have
 nothing to hide is no different than saying you don't care about free
 speech because you have nothing to say."
   -- Edward Snowden



Re: finally end single-person maintainership

2024-04-08 Thread Steve McIntyre
Bill Alombert wrote:
>On Sun, Apr 07, 2024 at 04:04:18PM +0200, Andreas Tille wrote:
>> Hi Wouter,
>> 
>> Am Sun, Apr 07, 2024 at 03:31:43PM +0200 schrieb Wouter Verhelst:
>> > [Feel free to quote any part of this email which I wrote outside of this
>> > mailinglist]
>> 
>> OK, moving the discussion to debian-devel where it should belong.
>> 
>> > Debian packages need to be well maintained. In some cases, having
>> > multiple maintainers on a package improves the resulting quality of
>> > packages. But in some other cases, it does not; one example for this
>> > second case is my package "logtool", which I'm going to upload to fix
>> > #1066251 soon and for which by the simple act of doing that I will
>> > double the amount of uploads it's seen in the past five years (and the
>> > number of uploads in the past 10 can still be counted on the fingers of
>> > a single hand).
>> > 
>> > This is not because it's not well maintained; it's because the package
>> > just *does not require* a lot of work to be kept up to date: upstream
>> > has not been active for over 20 years, but it still performs the job it
>> > was designed to do, as it was designed to, and I see no need to have it
>> > removed from the archive.
>> 
>> What is your opinion about pushing logtool to Salsa?
>
>Not speaking for logtool obviously, but maintaining simple packages on salsa is
>just useless bureaucracy.

So that's OK for *you* only in this case. Now consioder for the
project as a whole. Every package that differs from the norm is more
effort for anybody else to maintain/bugfix/NMU/whatever. We have a
history of this (in so many ways), and it's a significant drain.
Please consider the bigger picture.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Can't keep my eyes from the circling sky,
Tongue-tied & twisted, Just an earth-bound misfit, I...



Re: Reaction to potential PGP schism

2023-12-28 Thread Steve McIntyre
Enrico Zini wrote:
>
>I maintain critical code that calls out to gnupg, in part because at the
>time I wrote it that was the only thing available, and in part because
>I'm supposed to offer the broadest possible compatibility with what
>other people in Debian are using, so if everyone else seems to use
>gnupg, gnupg is the first thing I would consider.
>
>I hated and still hate every single moment I spent having to interface
>with gnupg. The protocol to interact with it is custom, hydiosincratic,
>poorly documented, and very hard to speak correctly. When in the end I
>managed to make things work, I was always left with the feeling that
>there would still be a corner case that I missed, or that will be
>introduced in a future gnupg release, waiting to become a security issue
>in our infrastructure, despite having asked for peer review from
>appropriate people in Debian.
>
>New releases make things harder rather than easier. Now gnupg is a
>mini-ecosystem of security-critical daemons that need to be brought up
>and killed, that may time out or run partly off sync with configuration,
>which adds even more know-how to the amount require to survive as
>downstream consumer of that one single "API".

^^^ 100% on all of that.

Trying to drive gnupg with automation is *such* a hateful,
error-prone, *inconsistent* experience. Trying to do (what should be)
simple things is really hard and messy. Simply trying to identify keys
reliably is harder than it should be. Semantics of command lines
change from one version to the next.

>I've been wanting for literally decades something with language
>bindings, or with a protocol that is built on existing well-known
>standards, outputting data that I can parse with an existing and tested
>parser library, using I/O channels that I can manage using an existing
>and tested communication library.

Again 100% on this. Just like you, I've spent countless hours writing
code to parse GPG output because of this mess.

>I hate it every single time I need to use gnupg, but still I use it
>because I understand it's what Debian has been expecting me to use, so I
>add that requirement to the pile of historical quirks that geologically
>accrete in our community, which make our barrier of entry so stylishly
>high, and make us appear oh so fearfully smart.
>
>
>> # What Can Debian Do About This?
>> 
>> If you are implementing or maintaining an OpenPGP implementation in
>> debian, please consider encouraging upsteam to add a sop frontend, and
>> get it tested in the interop test suite!
>
>This. 
>
>I don't know if it should be sop or a protocol or a standard, but I'd
>like to see Debian clearly document its expectations on its crypto
>requirements, and stand behind it.
>
>I personally believe that we should depend, for our core security, on an
>interoperable standard with multiple implementations rather than a
>project that follows the hydiosincracies of a single isolated upstream.
>
>Whatever we do, though, I want that to be official. As things stand I'll
>keep suffering with gnupg until at a DebConf I'll have at least 5 people
>look at me wide-eyed and say "are you still using THAT? Everyone moved
>to THIS instead!"
>
>I'd like to ask for what mature OpenPGP implementations exist today,
>pick one I feel I can confidently control, and then when somebody comes
>and says "my gpg/$TOOL segfaults on your input", I want to be able to
>point them at a documented decision and say "please report a bug to
>$TOOL" instead of taking a week off to port everything again to gpg.
>
>Thank you for all the work you've done on this over the years! I've
>appreciated it with great gratitude and a big hope that some day, thanks
>to you and others like you, those >=5 people at a DebConf will really
>look at me wide-eyed and show me a way out of the pit.

*grin* I look forwards to it!

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Can't keep my eyes from the circling sky,
Tongue-tied & twisted, Just an earth-bound misfit, I...



Re: /usr-move: Do we support upgrades without apt?

2023-12-26 Thread Steve McIntyre
On Sat, Dec 23, 2023 at 01:22:48PM +, Richard Lewis wrote:
>
>Perhaps release-notes should suggest to run dpkg --verify after a
>dist-upgrade anyway - i assume it doesnt hurt to do so?

That's a really good suggestion, yes! I don't know why nobody hasn't
thought of this before. :-)

>Happy to suggest and edit text for release notes: i would want to know:
>
>- how do i know if the system is fine?
>
>   i was assuming that it would output nothing if everything is fine,
>   but that seems to be far from the case. I get huge amounts of output
>   that is very hard to interpret, i assume it's showing a 'c' for every
>   single changed conffile, and 'missing' where i deleted conffiles.
>   But why are some lines contain question marks?  we would need a lot
>   of explanation here to make this useful for users (unfortunately, the
>   dpkg man page is very confusing about this option, and doesnt have
>   any of this, as far as i can understand)
>
>- if something went wrong:
>   a) how do i know? would there be an obvious error message? do i need to 
> check the exit status?
>   b) what would i do?: reinstall some packages? reinstall the whole system?
>
>(maybe this should be in a bug against release-notes)

Maybe a wrapper script to just report likely problems would be a good
plan.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
We don't need no education.
We don't need no thought control.



Re: RFC: advise against using Proton Mail for Debian work?

2023-11-15 Thread Steve McIntyre
I wrote:
>nil...@mailbox.org wrote:
>>
>>>2. The Proton Mail web client automatically encrypts email to anyone who
>>>it has a key for.  Usually, this would be a great thing, but it means
>>>that emailing 1234 at bugs.debian.org while CCing
>>>uploader_since_this_is_an_rc_...@debian.org will encrypt the email that
>>>is sent to the BTSe...which has the effect of making Debian development
>>>veiled in plain sight rather than "in the open".
>>
>>Does it not encrypt email per-sender?
>
>Ewww, I certainly hope so!

So I've just set up a ProtonMail test account to verify. Mailing to
myself, it already clearly knew about my PGP key (I've already had
lots of encrypted mails from ProtonMail users), but sending to a
different address that came through in plain text.

So *that* doesn't seem to be a worry, but the concern about people
sharing private keys is still very real... :-/

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Can't keep my eyes from the circling sky,
Tongue-tied & twisted, Just an earth-bound misfit, I...



Re: RFC: advise against using Proton Mail for Debian work?

2023-11-15 Thread Steve McIntyre
nil...@mailbox.org wrote:
>
>>2. The Proton Mail web client automatically encrypts email to anyone who
>>it has a key for.  Usually, this would be a great thing, but it means
>>that emailing 1234 at bugs.debian.org while CCing
>>uploader_since_this_is_an_rc_...@debian.org will encrypt the email that
>>is sent to the BTSe...which has the effect of making Debian development
>>veiled in plain sight rather than "in the open".
>
>Does it not encrypt email per-sender?

Ewww, I certainly hope so!

Do we have any examples of encrypted mails hitting the BTS?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Can't keep my eyes from the circling sky,
Tongue-tied & twisted, Just an earth-bound misfit, I...



Re: booststrapping /usr-merged systems (was: Re: DEP 17: Improve support for directory aliasing in dpkg)

2023-06-09 Thread Steve McIntyre
Raphaël Hertzog wrote:
>
>In the same spirit, I'd like to throw an idea... could we decide that
>base-files is the first package to be configured as part of the bootstrap
>protocol and change base-files maintainer's scripts into statically linked
>executables so that they can work even if we don't have the library loader
>on the ABI-compliant path?

What exactly do you mean here? You know that even a statically linked
executable needs an interpreter defined in the ELF header?

--
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: i386 in the future (was Re: 64-bit time_t transition for 32-bit archs: a proposal)

2023-05-19 Thread Steve McIntyre
Steve Langasek wrote:
>
>On Fri, May 19, 2023 at 12:42:32PM +0100, Steve McIntyre wrote:
>> >If the main reason is to support non-free binaries, at least to me
>> >that does not seem like a very compelling reason. And people can
>> >always use old chroots or similar I guess?
>
>> i386 is in a really awkward situation here, I think. Nobody is working
>> on it explicitly any more (AFAICS?), but its history as by far the
>> most common architecture means that:
>
>>  * we still have a (very!) long tail of installations using it
>>  * there are *massively* more old binaries available for it, free,
>>proprietary *and* locally-built
>
>FTR this includes wine, and 30 years of 32-bit Windows executables that
>people want to be able to run, including games.  (for which inaccurate times
>are not going to be hugely important, in general.) And some of those games
>are going to require e.g. library packages for 3d acceleration that are in
>sync with kernel drivers (nvidia).  This was ultimately what made "just use
>an older version in a chroot/container" untenable for Ubuntu and led to
>keeping i386 as a partial port.

ACK!

>So one may not think that support for legacy, proprietary programs is a
>compelling reason to keep binary-compatibility on i386.  But I counter that
>unless you care about this, there's no reason to keep i386 as an
>architecture *at all*.

That's exactly my reasoning, yup!

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: i386 in the future (was Re: 64-bit time_t transition for 32-bit archs: a proposal)

2023-05-19 Thread Steve McIntyre
Andrew Cater wrote:
>On Fri, May 19, 2023 at 03:03:40PM +0100, Steve McIntyre wrote:
>> 
>> I had been thinking about doing similar for installer images too, but
>> with other work going on too I think it got too late in the cycle to
>> make that change. My plan is therefore to ship i386 installer images
>> for bookworm as normal (including bookworm point releases going
>> forwards), but to disable those builds for testing/trixie ~immediately
>> after the release.
>
>I'd honestly suggest *just* publishing DVD1 for i386.
>
>Netinst requires internet access: DVD1 can be used to install a basic
>system without this. Scrap *everything else* for i386 installation media.

We've had this discussion before. I don't see the point in removing
choice here at *really* short notice before bookworm, but still
keeping a non-zero number of installer images for the architecture. It
saves us very little effort and doesn't really gain us anything.

This is why I'm talking *now* about dropping things for trixie.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: i386 in the future (was Re: 64-bit time_t transition for 32-bit archs: a proposal)

2023-05-19 Thread Steve McIntyre
Colin Watson wrote:
>On Fri, May 19, 2023 at 09:19:35AM -0500, G. Branden Robinson wrote:
>> Well, maybe not a strong view, but a sense of vague unease--possibly an
>> ill-informed one.  As someone who has used SIMH for "real" work[1], I
>> have to ask how someone would conduct an install to a 32-bit x86 machine
>> running under emulation, assuming no OS on the simulated machine.
>
>I occasionally use 32-bit x86 even today (mostly for not very good
>historical reasons, but nevertheless), and I do it by using a 32-bit
>container on a 64-bit x86 machine instead.  It's much faster to run, and
>it doesn't depend on installer support.  There are doubtless edge cases
>where you need a completely separate kernel, but they aren't really ones
>I run into.

ACK. For people needing/testing i386 stuff, even just a simple
debootstrap and {s,}chroot will cover the vast majority of
needs. That's how we've been building i386 software already for ages
in Debian already.

More complex things can be done if needed: loopback mount an image,
debootstrap, install a kernel, etc. I don't see this as something we
should be spending much effort on in the future.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: i386 in the future (was Re: 64-bit time_t transition for 32-bit archs: a proposal)

2023-05-19 Thread Steve McIntyre
Luca Boccassi wrote:
>On Fri, 19 May 2023 at 12:42, Steve McIntyre  wrote:
>>
>> I'm planning on stopping publishing installer images for i386
>> soon. Why? We should be strongly encouraging users to move away from
>> it as a main architecture. If they're still installing i386 on 64-bit
>> hardware, then that's a horrible mistake. If they're still running
>> i386 *hardware*, then they should be replacing that hardware with more
>> modern, more capable, more *efficient* stuff.
>>
>> As and when we switch i386 to a secondary status like this (however we
>> label it!), then I think we should *only* consider it as a
>> compatibility layer for older software. People *could* just use old
>> chroots or similar, but the need is likely to be around for a
>> while.
>
>+1 for stopping publishing installers for i386, it has been mentioned
>many times but it's always worth repeating: electricity costs to keep
>running i386 hardware are already way higher than what it costs to buy
>a cheap, low-power replacement like a raspberry pi, that also provides
>better performance.

Exactly.

>Just to clarify, by 'soon' here, do you mean for Bookworm too, or 
>post-Bookworm?

We've already switched off i386 *live* images for Bookworm. Honestly,
we should probably have done that a while ago; IMHO they've not been
useful in some time.

I had been thinking about doing similar for installer images too, but
with other work going on too I think it got too late in the cycle to
make that change. My plan is therefore to ship i386 installer images
for bookworm as normal (including bookworm point releases going
forwards), but to disable those builds for testing/trixie ~immediately
after the release.

If people have strong opinions about that plan, let us know please.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



i386 in the future (was Re: 64-bit time_t transition for 32-bit archs: a proposal)

2023-05-19 Thread Steve McIntyre
Guillem Jover wrote:
>On Thu, 2023-05-18 at 12:01:40 -0700, Steve Langasek wrote:

...

>> > > * … but NOT on i386.  Because i386 as an architecture is primarily of
>> > >   interest for running legacy binaries which cannot be rebuilt against a 
>> > > new
>> > >   ABI, changing the ABI on i386 would be counterproductive, as mentioned 
>> > > in
>> > >   https://wiki.debian.org/ReleaseGoals/64bit-time.
>> 
>> > Like Russ, I'm also dubious about this, and introduces a special case
>> > and complexity that does not seem warranted TBH. If this was the case it
>> > would seem to me it would disallow SOVERSION bumps for example, which we
>> > have never been concerned with.
>> 
>> I didn't see anything in Russ's email in this thread that implied he was
>> dubious of this approach?  He simply has a library he maintains for which he
>> believes binary compatibility is uninteresting.
>
>Ah, indeed, just reread the specific paragraph now, sorry Russ! :)
>
>> FWIW in Ubuntu where we maintain i386 strictly as an architecture for
>> compatibility with third-party binaries, we have 1034 source packages that
>> build Arch: i386 debs.  Not all of those source packages are shared
>> libraries, but enough of them are that manually updating them to maintain
>> ABI compatibility on i386 would be a substantial amount of work.  In terms
>> of overall complexity, I think the scales tip in favor of the toolchain not
>> defaulting to _TIME_BITS=64 on i386.
>
>The problem with obsolete packages is also shared by all other arches,
>and for those and for local packages the dependency system works for
>the user and should let them know whether they can upgrade or they
>would need to remove such packages. For other local FOSS packages
>they might just be able to rebuild them.
>
>Excluding i386 from this transition seems to me will pretty much
>sentence it, and would also make it rather hard to perform that
>transition cleanly going forward if people want to keep it alive. And
>while Debian might eventually remove it from its official ports, we
>have multiple old ports that are still maintained and used.
>
>If the main reason is to support non-free binaries, at least to me
>that does not seem like a very compelling reason. And people can
>always use old chroots or similar I guess?

i386 is in a really awkward situation here, I think. Nobody is working
on it explicitly any more (AFAICS?), but its history as by far the
most common architecture means that:

 * we still have a (very!) long tail of installations using it
 * there are *massively* more old binaries available for it, free,
   proprietary *and* locally-built

Moving forwards, we need to make a call on what we want i386 for. I
was hoping to wait until after bookworm is released to have the meat
of that discussion, but...

I'm planning on stopping publishing installer images for i386
soon. Why? We should be strongly encouraging users to move away from
it as a main architecture. If they're still installing i386 on 64-bit
hardware, then that's a horrible mistake. If they're still running
i386 *hardware*, then they should be replacing that hardware with more
modern, more capable, more *efficient* stuff.

As and when we switch i386 to a secondary status like this (however we
label it!), then I think we should *only* consider it as a
compatibility layer for older software. People *could* just use old
chroots or similar, but the need is likely to be around for a
while.

There's a tension here: I think it's important to keep the old ABI
around for those old binaries, and I genuinely don't see a use case
for a new incompatible ABI on a mostly-dead architecture that won't
support those binaries. *But* I think we'll also need to keep the port
going with security fixes - it's still likely to be quite common and
we need to keep users safe.

People are even likely to want to keep old software running beyond
2038, in which case I envisage clock hacks coming to keep things
limping on. :-/

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: Bug#1035904: dpkg currently warning about merged-usr systems (revisited)

2023-05-15 Thread Steve McIntyre
Hey Johannes,

On Mon, May 15, 2023 at 06:48:04AM +0200, Johannes Schauer Marin Rodrigues 
wrote:
>Quoting Steve McIntyre (2023-05-15 02:54:02)
>> 
>> Pointing at gentoo or nixos as examples of projects that have decided
>> to break compatibility doesn't cut it, I'm afraid. They're well known
>> for changing fundamental things around Linux and (basically) not caring about
>> interoperability. That attitude is *not* Debian's.
>
>me and Luca have different ideas about how bootstrapping a Debian chroot should
>look like and I don't want to make an argument *for* changing PT_INTERP here as
>I think that keeping compatibility with others by following ABI is a good thing
>and because I think (and hope -- but Helmut is doing that analysis right now)
>that the debootstrap problem can be solved in a way I envision without changing
>PT_INTERP. But what I do not understand about the argument against Luca's
>proposal is:
>
>Obviously, with Luca's proposal, binaries from packages built with a different
>dynamic linker path in them would not work on distributions without merged-/usr
>symlinks. But if the property of stuff from Debian being able to run on
>non-Debian non-merged-/usr systems is an important one, then why was it okay to
>have merged-/usr as the default? Because with merged-/usr we already changed
>the interface contract for a lot of things because now binaries and libraries
>can also be found at other locations than on non-merged-/usr systems. A script
>with a /usr/bin/bash shebang built on and for Debian will not work on a system
>without the symlinks.

Despite the massive upheavals of merged-/usr in *other* ways, it's
actually a *minor* change as far as compatibility is concerned
here. The runtime linker (aka interpreter) is responsible for
resolving symbols and finding needed libraries. So long as *that* bit
works OK, then ~everything else should follow OK. This is how it's
possible to have things work across distros: binaries don't actually
care where the libraries live, or whether they came from rpm or deb
packaging, etc.

The issue at hand here is that the interpreter path is the most basic
thing that matters for this compatibility. Break this and *nothing*
can work.

>So did we not years ago decide, that the result of the "cross- and
>inter-project discussion" is, that everybody is going merged-/usr and that's
>why we need it too and that's why it is okay to build a system where binaries
>and scripts built for it just may not run on those other systems that do not do
>it?  With merged-/usr we already *did* "change fundamental things around" for
>reasons that are really not clear to me (but which i do not want to discuss
>here) and as a result did not "care about interoperability" (with those who do
>not also adopt it). In my own Debian work I so far only got extra work because
>of merged-/usr and I do not see the benefits (yet) and I was hoping that
>"changing fundamental things around Linux and (basically) not caring about
>interoperability" was *not* Debian's attitude but alas here we are.
>
>So have we not already burned the bridges to the non-merged-/usr world? Why was
>it okay back then to say "we can make this change because all other important
>players are doing merged-/usr so we can/have to as well". And now in the
>PT_INTERP discussion somehow we care again about those systems? I thought we
>already had the "cross- and inter-project discussion" about merged-/usr and
>because the result was "yes, go for it" we did it too. But if that is the case,
>why do we now care for a subset of the interoperability problems caused by
>merged-/usr for systems that don't have it?

This change is absolutely *not* needed to make merged-/usr work; if
anybody is claiming that it is, then they are not being 100% honest
with us. All the other distros doing merged-/usr have done it without
making this change, and it's also been working OK for us so far
without this change.

Breaking an agreed interface contract like this is axiomatically
*wrong* and will hurt us and the rest of the Linux ecosystem.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Bug#1035904: dpkg currently warning about merged-usr systems (revisited)

2023-05-14 Thread Steve McIntyre
I'm *trying* to assume good faith here, but I'm running out of energy
to do so.

On Mon, May 15, 2023 at 01:42:27AM +0100, Luca Boccassi wrote:
>On Mon, 15 May 2023 at 01:14, Russ Allbery  wrote:
>
>> Incidentally, that remains true even if we only do that in distribution
>> packages.  I certainly have copied binaries from a Debian package to other
>> Linux systems before for various reasons and expected them to run.  Sure,
>> this might not work for other reasons outside of our control, but that's
>> no reason to be gratuitously incompatible by breaking the ABI,
>> particularly for what seem to be annoyances of our own creation with known
>> workarounds.
>
>Thanks, that's the first actual real example mentioned so far. And
>it's an interesting one: taking a $random Debian package and using it
>on a completely different, non-Debian system. Is that a supported use
>case? If so, does that mean that I can go ahead and raise a Severity:
>serious bug on any package that doesn't work in such a way?

Russ has described copying *binaries* out of packages and running them
elsewhere. I've done that too, from time to time. This is one of the
things made possible by the ABI contract being followed.

You are the one proposing to break that contract, thereby
*guaranteeing* this will fail on systems where otherwise it could
work. I think the onus is on *you* to justify why this is a valid and
useful thing to do. Your apparent lack of care for agreed standards
here is horrifying.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Bug#1035904: dpkg currently warning about merged-usr systems (revisited)

2023-05-14 Thread Steve McIntyre
On Mon, May 15, 2023 at 12:24:15AM +0100, Luca Boccassi wrote:
>On Sun, 14 May 2023 at 22:37, Josh Triplett  wrote:
>
>> The x86-64 ABI is set. Feel free to make the case to the next
>> architecture designer that their new ABI should have the dynamic linker
>> in `/usr/lib`. That would *not* have the same downsides, as long as
>> everyone agrees on a path.
>
>In practice it is not, though. There are other distributions that
>change PT_INTERP for their own purposes, they've already been listed
>in this thread. And I am still not hearing any concrete, factual use
>case that would be impaired by such a change. I'm beginning to
>seriously think there aren't any? Is that really the case?

The ABI has been agreed and set down in documentation that *just
about* everybody has been following since its inception. This includes
the most basic set of definitions of what an x86-64 program must look
like, including the interpreter path. If this path is changed, then
*at the most basic level* we'd be making programs that are not valid
by the ABI we've agreed to. This is an *external interface contract*,
not something we should ever consider changing without significant
cross- and inter-project discussion.

Pointing at gentoo or nixos as examples of projects that have decided
to break compatibility doesn't cut it, I'm afraid. They're well known
for changing fundamental things around Linux and (basically) not
caring about interoperability. That attitude is *not* Debian's.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"The problem with defending the purity of the English language is that
 English is about as pure as a cribhouse whore. We don't just borrow words; on
 occasion, English has pursued other languages down alleyways to beat them
 unconscious and rifle their pockets for new vocabulary."  -- James D. Nicoll



Re: Bug#1035904: dpkg currently warning about merged-usr systems (revisited)

2023-05-12 Thread Steve McIntyre
On Fri, May 12, 2023 at 01:11:38PM +0100, Luca Boccassi wrote:
>On Fri, 12 May 2023 at 12:08, Steve McIntyre  wrote:
>>
>> On Fri, May 12, 2023 at 11:40:05AM +0100, Steve McIntyre wrote:
>> >On Fri, May 12, 2023 at 10:49:32AM +0100, Luca Boccassi wrote:
>> >>On Fri, 12 May 2023 at 09:40, Steve McIntyre  wrote:
>> >>>
>> >>> On Fri, May 12, 2023 at 07:40:00AM +0200, Ansgar wrote:
>> >>> >
>> >>> >The core issue as I see it is as follows:
>> >>> >
>> >>> >- Debian has decided to support only merged-/usr, including possibly
>> >>> >  moving /bin/sh to /usr/bin/sh or using /usr/lib*/ld-linux-x86-64.so.2
>> >>> >  as the interpreter in binaries.
>> >>>
>> >>> WTF? *Nobody* has been talking about breaking ABI like this, that I've
>> >>> seen. The interpreter must *not* be changed willy-nilly.
>> >>
>> >>Nothing's happening 'willy-nilly'. We are discussing a bunch of
>> >>seemingly crazy options, as in, "what would _actually_ explode if we
>> >>do this or do that?", on this very d-devel thread. I posted a longer
>> >>version here some days ago:
>> >>
>> >>https://lists.debian.org/debian-gcc/2023/05/msg00030.html
>> >
>> >Oh holy fuck.
>> >
>> >You're talking about changing ABI by doing this. That *is* utterly
>> >crazy. No.
>>
>> People have asked me to expand on this further...
>>
>> I've been involved in defining ABI before, specifically for
>> armhf. It's not a quick and easy process. It needs buy-in from all
>> sides to make things work, and people *really* value the
>> interoperability that it enables.
>>
>> The interpreter path is one of the most important parts of the ABI
>> spec, the bit that makes binaries compatible between all the various
>> stakeholders: compiler/tools people, distros, software vendors,
>> etc. Lots of the rest of the details downstream of this can be
>> changed, and people do this all the time - compare multilib to
>> multi-arch for example. That all works fine *so long as* the runtime
>> linker can be located and started OK.
>
>The loader is still available via the old path, so external/third
>party/local/other software works unchanged. This should negatively
>only affect our 1st party packages, when running on a non-merged
>distro.

So why the hell do you want to break this in the first place? Does a
symlink in the "wrong" place offend you for some reason? For that you
want to change a core assumption in *every single binary* in Debian?
Believe me, I've been here in the past when we made changes in armhf
to accommodate earlier mistakes. That was just for one
architecture. What possible benefit do you see in this change?

>And are _all_ our packages really 100% compatible with other distros
>at all? Are they even supposed to be?
>
>For example, if I download efibootmgr from Bookworm on an Ubuntu Focal
>machine, when I try to run it, it fails:
>
>root@focal:/tmp# wget
>http://ftp.de.debian.org/debian/pool/main/e/efibootmgr/efibootmgr_17-2_amd64.deb
>--2023-05-12 12:46:17--
>http://ftp.de.debian.org/debian/pool/main/e/efibootmgr/efibootmgr_17-2_amd64.deb
>Resolving ftp.de.debian.org (ftp.de.debian.org)... 141.76.2.4
>Connecting to ftp.de.debian.org (ftp.de.debian.org)|141.76.2.4|:80... 
>connected.
>HTTP request sent, awaiting response... 200 OK
>Length: 27572 (27K) [application/vnd.debian.binary-package]
>Saving to: 'efibootmgr_17-2_amd64.deb'
>
>efibootmgr_17-2_amd64.deb
>100%[===>]  26.93K
>--.-KB/sin 0.04s
>
>2023-05-12 12:46:17 (740 KB/s) - 'efibootmgr_17-2_amd64.deb' saved 
>[27572/27572]
>
>root@focal:/tmp# dpkg -x efibootmgr_17-2_amd64.deb ebm
>root@focal:/tmp# ./ebm/bin/efibootmgr
>./ebm/bin/efibootmgr: /lib/x86_64-linux-gnu/libc.so.6: version
>`GLIBC_2.34' not found (required by ./ebm/bin/efibootmgr)
>
>Should I file a severity: serious bug against efibootmgr because it is
>not interoperable?

You're wilfully missing the point, and you know it.

>The answer is obviously not, because it would be absurd to expect a
>binary compiled against libraries from one distro to "just work" on an
>entirely different distro. Glibc itself is not forward compatible, and
>is allowed to add new symbols, that are not present in older versions,
>and packages are allowed to depend on them. Aren't those also ABI
>breakages? What about all the libraries that bump soname? What about
&

Re: Bug#1035904: dpkg currently warning about merged-usr systems (revisited)

2023-05-12 Thread Steve McIntyre
On Fri, May 12, 2023 at 11:40:05AM +0100, Steve McIntyre wrote:
>On Fri, May 12, 2023 at 10:49:32AM +0100, Luca Boccassi wrote:
>>On Fri, 12 May 2023 at 09:40, Steve McIntyre  wrote:
>>>
>>> On Fri, May 12, 2023 at 07:40:00AM +0200, Ansgar wrote:
>>> >
>>> >The core issue as I see it is as follows:
>>> >
>>> >- Debian has decided to support only merged-/usr, including possibly
>>> >  moving /bin/sh to /usr/bin/sh or using /usr/lib*/ld-linux-x86-64.so.2
>>> >  as the interpreter in binaries.
>>>
>>> WTF? *Nobody* has been talking about breaking ABI like this, that I've
>>> seen. The interpreter must *not* be changed willy-nilly.
>>
>>Nothing's happening 'willy-nilly'. We are discussing a bunch of
>>seemingly crazy options, as in, "what would _actually_ explode if we
>>do this or do that?", on this very d-devel thread. I posted a longer
>>version here some days ago:
>>
>>https://lists.debian.org/debian-gcc/2023/05/msg00030.html
>
>Oh holy fuck.
>
>You're talking about changing ABI by doing this. That *is* utterly
>crazy. No.

People have asked me to expand on this further...

I've been involved in defining ABI before, specifically for
armhf. It's not a quick and easy process. It needs buy-in from all
sides to make things work, and people *really* value the
interoperability that it enables.

The interpreter path is one of the most important parts of the ABI
spec, the bit that makes binaries compatible between all the various
stakeholders: compiler/tools people, distros, software vendors,
etc. Lots of the rest of the details downstream of this can be
changed, and people do this all the time - compare multilib to
multi-arch for example. That all works fine *so long as* the runtime
linker can be located and started OK.

Changing the interpreter path would mean moving to a Debian-specific
ABI, breaking that compatibility. Hand-waving that away with (and I
quote):

  "The vast majority of distros today ship the loader in /usr/lib as
  /lib is just a symlink, so it would be interoperable."

is appalling arrogance. No. You do *not* get to break ABI with that
argument. The point of the ABI spec is that *everybody* follows
it. You don't change it just because you think it'll make your life a
little easier when bootstrapping a system.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Welcome my son, welcome to the machine.



Re: Bug#1035904: dpkg currently warning about merged-usr systems (revisited)

2023-05-12 Thread Steve McIntyre
On Fri, May 12, 2023 at 10:49:32AM +0100, Luca Boccassi wrote:
>On Fri, 12 May 2023 at 09:40, Steve McIntyre  wrote:
>>
>> On Fri, May 12, 2023 at 07:40:00AM +0200, Ansgar wrote:
>> >
>> >The core issue as I see it is as follows:
>> >
>> >- Debian has decided to support only merged-/usr, including possibly
>> >  moving /bin/sh to /usr/bin/sh or using /usr/lib*/ld-linux-x86-64.so.2
>> >  as the interpreter in binaries.
>>
>> WTF? *Nobody* has been talking about breaking ABI like this, that I've
>> seen. The interpreter must *not* be changed willy-nilly.
>
>Nothing's happening 'willy-nilly'. We are discussing a bunch of
>seemingly crazy options, as in, "what would _actually_ explode if we
>do this or do that?", on this very d-devel thread. I posted a longer
>version here some days ago:
>
>https://lists.debian.org/debian-gcc/2023/05/msg00030.html

Oh holy fuck.

You're talking about changing ABI by doing this. That *is* utterly
crazy. No.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"...In the UNIX world, people tend to interpret `non-technical user'
 as meaning someone who's only ever written one device driver." -- Daniel Pead



Re: Bug#1035904: dpkg currently warning about merged-usr systems (revisited)

2023-05-12 Thread Steve McIntyre
On Fri, May 12, 2023 at 07:40:00AM +0200, Ansgar wrote:
>
>The core issue as I see it is as follows:
>
>- Debian has decided to support only merged-/usr, including possibly
>  moving /bin/sh to /usr/bin/sh or using /usr/lib*/ld-linux-x86-64.so.2
>  as the interpreter in binaries.

WTF? *Nobody* has been talking about breaking ABI like this, that I've
seen. The interpreter must *not* be changed willy-nilly.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"I've only once written 'SQL is my bitch' in a comment. But that code 
 is in use on a military site..." -- Simon Booth



Re: Re-enabling os-prober for live images?

2023-04-27 Thread Steve McIntyre
[ Following up on the older discussion... ]

t...@debian.org wrote:
>kilobyte wrote:
>
>>At this point, I'd just enable os-prober unconditionally, and think of a
>
>Erm, *no*?!
>
>os-prober corrupts data when called (in virtualisation/emulation
>guests, at the very least).
>
>
>Steve wrote:
>
>>I'm also pondering tweaking things in d-i to re-enable os-prober if
>>the system looks like it might have some other OS installed. Yes, I
>
>But what if the system has *both* other OSes installed *and* is
>used as virtualisation host (when booting Debian) at the same time?
>
>You’ll still get data corruption of unrelated data (VM guests).
>I consider that inacceptable, but apparently YMMV…

And this debate is exactly the problem. There is no single good answer
here, and two different sets of people will lose, depending on what we
choose as a default:

 * (Potentially new) users install Debian as part of a dual-/multi-
   boot system and now (as os-prober is disabled by default) they
   don't get an option to boot the other OS(es) easily. I've seen
   situations like this before, and I understand that people worry
   here: "OMG what happened to the Windows system I still need?"

 * People with currently-running guests potentially end up with data
   corruption problems when updating grub on the host.

What I've done now is:

1. Added debconf handling for enabling/disabling os-prober in
   /etc/default/grub to make it easier to handle things.

2. Made some *limited* tweaks to grub-installer, the d-i component
   that sets up GRUB. It already runs os-prober in a massively
   over-complicated way (see below).

   If *that* os-prober run detects other OSes installed, we will now
   use the new grub debconf setting to enable os-prober on the new
   system. If no other OS is detected during installation, we will
   disable os-prober there.

   Either way, the user will be prompted about os-prober *at a low
   priority* so that they can override things via preseed or answering
   the question in d-i expert mode.

I think this is the best route forward, from the available options. If
you're in the tiny set of people running Debian on a dual-boot *and*
running guests while you update grub then you'll need to manage that
on your own: disable os-prober and come up with your own method of
adding extra boot options (or similar). /etc/grub.d is designed for
this kind of thing if you need it.

The current set of options here with grub and grub-installer are
*huge*, and IMHO the code is getting impossible to follow or
maintain. :-(

*After bookworm*, I plan to take a machete to grub-installer and do
some long-needed cleanup.

1. There's currently support in grub-installer for doing a *one-off*
   os-prober run and adding a semi-hard-coded list of other OSes found
   there, then not running os-prober in future on the installed
   system. This is going away; I'm not convinced that it's *ever*
   worked proparly and of course it doesn't deal with future changes
   to the system.

2. I'm planning on killing support for grub-legacy, which is *way*
   overdue. It's been dead upstream for over a decade already...

For GRUB itself:

1. We have a *lot* of patches on top of upstream GRUB, which makes it
   hard to keep in step with security updates etc. I hope to find time
   to rationalise things, following on from work that Colin was doing
   earlier.

2. I'd like to simplify options more and reduce the number of packages
   we ship here too. Let's see...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: Reducing allowed Vcs for packaging?

2023-03-26 Thread Steve McIntyre
Sean Whitton wrote:
>
>On Sat 04 Mar 2023 at 10:58PM +01, Joerg Jaspert wrote:
>
>> On 16792 March 1977, Adrian Bunk wrote:
>>
>>> for the contents of packages in the archive the ftp team requires that
>>> everything is in the preferred form of modification.
>>
>> Yes. Of course.
>>
>> But git or svn or even sccs and rcs is NOT, in any way, preferred for of
>> modification. Only one way of storage and handling some metadata.
>
>This is Debian's official position, but it's debateable.
>
>There is the preferred form for modification for an individual *file*,
>and that probably doesn't include version control.  But the preferred
>form for modifying a *project* arguably does.

I think you're *reaching* here. I know of quite a few projects where
they consider their CI setup to be an intergral part of project
development. Should we therefore declare that "preferred form of
modification" could include all of the github or gitlab
infrastructure?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: Starting the weekly live images for Bookworm building again

2023-03-19 Thread Steve McIntyre
Hey again,

On Tue, Jan 31, 2023 at 03:36:53PM +, Steve McIntyre wrote:
>>
>>As you can see, this affects many teams:
>>* live-setup: a MR to generate all live images for Bookworm [A2]

So, after some delay from me and some further delays from various
Debian machines committing suicide [1], I've got bookworm live builds
running again. \o/

I've taken Roland's updated patches and tweaked a little more in the
setup.git and live-setup.git repos, and we now have live builds
integrated. Changes I've added:

 * turned on source tarball generation using LB_SOURCE=true, and
   disable the external source build that we dod for the older
   live-wrapper builds
 * when building on casulana, warn about archive updates rather than
   restarting builds
 * don't attempt to build i386 live images any more, they're not useful
 * tweaked logging

So, *builds* work fine but I've not *yet* tested actually
booting/using one of these images in any way. I've just triggered a
full build of "testing" live images now, please help test if you can
once they're in place at [2] in a couple of hours from now.

I don't yet know how close we are to having full non-free-firmware
integration with the live images; I expect there might be some more
work needed there yet, but I'd love to be proven wrong. :-)

[1] "yay" for the long-standing tradition of services failing as we
get close to a release: this time it was casulana and salsa...
[2] https://get.debian.org/images/weekly-live-builds/

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"...In the UNIX world, people tend to interpret `non-technical user'
 as meaning someone who's only ever written one device driver." -- Daniel Pead



Re: Re-enabling os-prober for live images?

2023-03-06 Thread Steve McIntyre
j...@debian.org wrote:
>
>Since the grub 2.06 upload, os-prober is now disabled by default. This 
>means that other operating systems are no longer detected and added to 
>grub by default in Debian 12.

...

>I haven't followed further on to which solution they went with, but 
>since it's so late in the development cycle, wouldn't it make sense to 
>enable os-prober for Live systems for Debian 12, and then look at some 
>of the better solutions (like only probing at install time, and keeping 
>a cached results for grub) for Debian 13?

I'm also pondering tweaking things in d-i to re-enable os-prober if
the system looks like it might have some other OS installed. Yes, I
realise that may sound odd(!), but I can see a number of users
complaining that their dual-boot system doesn't work any more... :-/

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Non-free-firmware changes - initial cut released!

2023-02-26 Thread Steve McIntyre
Hey all!

Here's a status update on the non-free-firmware changes that we voted
for last year [1].

Cyril has done a huge amount of work [2], implementing the bulk of
what we need. We released d-i bookworm alpha 2 last weekend [3],
including those changes. Our own testing shows that things work well
on *our* test hardware, but we'd like some more assistance in testing!
If you would like to help and you have a machine that wants firmware,
please:

 1. Boot the installer and verify that it identifies the necessary
firmware correctly - go as far as configuring the network. If
there are still missing firmware blobs, d-i will complain. If you
stop before making any changes in the partitioner (partman), then
this should a safe thing to do on your existing machine and won't
make any permanent changes.

 2. (If you can) complete an installation and check that all the
hardware works as expected after normal bootup. We'd love people
to do this to verify the more awkward blobs: audio and GPU.

We're especially interested in wifi, NIC and GPU firmware here, as
they have been the things blocking people installing Debian in the
past.

Please file bugs against "installation-reports" with whatever you
find! Thanks in advance!

We're also planning more updates before the full bookworm release -
watch this space!

[1] https://www.debian.org/vote/2022/vote_003
[2] https://debamax.com/blog/2023/02/27/debian-versus-non-free-firmware/
[3] https://lists.debian.org/debian-devel-announce/2023/02/msg5.html

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"Because heaters aren't purple!" -- Catherine Pitt



Re: Starting the weekly live images for Bookworm building again

2023-01-31 Thread Steve McIntyre
Hey Roland,

Apologies for leaving you waiting a while :-/

On Mon, Jan 16, 2023 at 05:35:50PM +0100, Roland Clobus wrote:
>
>This is a follow-up of my mail from 2022-11-21 [A1].
>
>I've made progress in the last two months, but would like to have some merge
>requests approved, to get more traction and to allow others to jump aboard
>and make the live images for Bookworm possible.
>
>As you can see, this affects many teams:
>* live-setup: a MR to generate all live images for Bookworm [A2]

ACK, I'll take a look at this again shortly.

>* localechooser: A minor fix [A3]

No idea about that, leaving for somebody else.

>* live-installer: A better user experience after the installer is finished
>[A4]

Merred just now.

>* live-build: Various installer improvements, including off-line installation
>[A5]

Not sure who might review that, let's see

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< Aardvark> I dislike C++ to start with. C++11 just seems to be
handing rope-creating factories for users to hang multiple
instances of themselves.



Re: need we support unshadowed passwords from the installer

2023-01-15 Thread Steve McIntyre
On Sat, Jan 14, 2023 at 09:18:59AM -0500, nick black wrote:
>Marc Haber left as an exercise for the reader:
>> On Fri, 13 Jan 2023 21:11:40 -0500, nick black
>>  wrote:
>> >i'm absolutely not suggesting we stop supporting NIS or other
>> >programs which rely on unshadowed passwords. it's a big ol'
>> >tent, and we have more than enough room for you to carry forth
>> >the torch of Solaris 2. i just don't think this belongs in the
>> >installer anymore.
>> 
>> Amen. NIS-based systems usually have professional administrators who
>> are well able to change the configuration.
>
>hahah, yes i thought you might support the idea based off
>adduser changelogs circa 2005 =].
>
>thanks to you and peter for voicing your support. i will head
>off to #debian-boot and try to drum up a merge.

I'll be honest, I've been horrified for years that we can still ask
the shadow question. I hadn't realised it might be relevant for
NIS. Even so, +1 from me. Let's get this done, I think...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Is there anybody out there?



Re: Firmware GR result - what happens next?

2022-10-13 Thread Steve McIntyre
On Thu, Oct 13, 2022 at 05:08:57PM +0200, Julien Cristau wrote:
>On Thu, Oct 06, 2022 at 05:13:22PM +0200, Tobias Frost wrote:
>> Maybe and idea would to do something like isa-support does for e.g 
>> sseX-support
>> on CPUs that does not have that feature: It fails on installation with an 
>> debconf message, IIRC.
>> So that would allow something like "new package" | 
>> "you-need-to-enable-nonfree-firmware-reminder-package"
>> 
>Failing on installation is a terrible user experience, let's not, pretty
>please.

It's not great, no. Do you have a better suggestion for making sure
people update sources.list?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"Since phone messaging became popular, the young generation has lost the
 ability to read or write anything that is longer than one hundred and sixty
 characters."  -- Ignatios Souvatzis



Re: Firmware GR result - what happens next?

2022-10-06 Thread Steve McIntyre
On Wed, Oct 05, 2022 at 10:11:27PM +0200, Julien Cristau wrote:
>On Sun, Oct 02, 2022 at 08:21:31PM +0100, Steve McIntyre wrote:
>> On Sun, Oct 02, 2022 at 11:08:47AM -0400, Michael Stone wrote:
>> >On Sun, Oct 02, 2022 at 03:53:00PM +0100, Steve McIntyre wrote:
>> >> On Sun, Oct 02, 2022 at 04:43:47PM +0200, Michael Biebl wrote:
>> >> > What's the plan for upgraded systems with an existing 
>> >> > /etc/apt/sources.list.
>> >> > Will the new n-f-f section added on upgrades automatically(if non-free 
>> >> > was
>> >> > enabled before)?
>> >> 
>> >> So this is the one bit that I don't think we currently have a good
>> >> answer for. We've never had a specific script to run on upgrades (like
>> >> Ubuntu do), so this kind of potentially breaking change doesn't really
>> >> have an obvious place to be fixed.
>> >
>> >Is there a reason to not continue to make the packages available in 
>> >non-free?
>> >I don't see a reason to force any change on existing systems.
>> 
>> Two things:
>> 
>>  1. I'm worried what bugs we might expose by having packages be in two
>> components at once.
>>  2. I really don't like the idea of leaving two different
>> configurations in the wild; it'll confuse people and is more
>> likely to cause issues in the future IMHO.
>> 
>> Plus, as Shengjing Zhu points out: we already expect people to manage
>> the sources.list anyway on upgrades.
>> 
>I think in the absence of a release upgrade script (which I very much
>doubt will happen, and be tested, and we can rely will be used, for
>bookworm), Michael's suggestion seems like a reasonable way forward.  I
>imagine we'll need to patch dak to allow that, but it seems like it
>should be tractable?

I'm also worried what effect this will have on other tools that have
to grok the archive (mirror tools, debian-cd, etc.). I'm not going to
try and veto having things in more than one component, but (ugh!) I
really think it's ugly. Actually, I think I'd much prefer Santiago's
idea:

> Couldn't we handle this via transitional firware* non-free packages,
> that depend on bookworm non-free-firmware packages?

We'd need to add some transitional binary packages for the small
number of n-f-f source packages. That way people would get errors from
apt if they don't read our warnings and update. Maybe this is a way
forward?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Firmware GR result - what happens next?

2022-10-02 Thread Steve McIntyre
On Sun, Oct 02, 2022 at 11:08:47AM -0400, Michael Stone wrote:
>On Sun, Oct 02, 2022 at 03:53:00PM +0100, Steve McIntyre wrote:
>> On Sun, Oct 02, 2022 at 04:43:47PM +0200, Michael Biebl wrote:
>> > What's the plan for upgraded systems with an existing 
>> > /etc/apt/sources.list.
>> > Will the new n-f-f section added on upgrades automatically(if non-free was
>> > enabled before)?
>> 
>> So this is the one bit that I don't think we currently have a good
>> answer for. We've never had a specific script to run on upgrades (like
>> Ubuntu do), so this kind of potentially breaking change doesn't really
>> have an obvious place to be fixed.
>
>Is there a reason to not continue to make the packages available in non-free?
>I don't see a reason to force any change on existing systems.

Two things:

 1. I'm worried what bugs we might expose by having packages be in two
components at once.
 2. I really don't like the idea of leaving two different
configurations in the wild; it'll confuse people and is more
likely to cause issues in the future IMHO.

Plus, as Shengjing Zhu points out: we already expect people to manage
the sources.list anyway on upgrades.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
You raise the blade, you make the change... You re-arrange me 'til I'm sane...



Re: Firmware GR result - what happens next?

2022-10-02 Thread Steve McIntyre
On Sun, Oct 02, 2022 at 05:31:16PM +0200, Cyril Brulebois wrote:
>Steve McIntyre  (2022-10-02):
>> * Extra d-i code to inform users about what firmware blobs have been
>>   loaded and the matching non-free-firmware packages. Plus information
>>   about the hardware involved. Maybe a new d-i module / udeb for this?
>>   Exact details here still TBD. Probably the biggest individual piece
>>   of work here.
>
>Not just blobs that were loaded, but also those which might get loaded
>in the installed system (since we don't have all modules around), see
>hw-detect.post-base-installer.d/50install-firmware in hw-detect (udevadm
>vs. modalias stuff).

ACK.

>> * Tweaks to add the non-free-firmware section in the apt-setup module
>>   if desired/needed.
>> 
>> * An extra boot option (a debconf variable) to disable loading extra
>>   firmware automatically, then exposed as an extra option through the
>>   isolinux and GRUB menus. d-i "expert mode" can also be used to tweak
>>   this behaviour later, except (obviously) for things like audio
>>   firmware that *must* be loaded early if they're going to be useful
>>   at all.
>
>The option/variable looks easy enough (once we decide what to call it)…
>Not sure what would be best to expose it to users: bootloader menus
>already have many options (text vs.  graphical, normal vs. rescue,
>accessibility settings, etc.), and don't get internationalization
>support anyway. On the flip side, having to go through a full expert
>installation is very nice.
>
>Maybe start by documenting the option (probably installation guide plus
>release notes), and of course implementing it; then see if/how we expose
>it?

Yup. Very much in that order... :-)

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
You lock the door
And throw away the key
There's someone in my head but it's not me 



Re: Firmware GR result - what happens next?

2022-10-02 Thread Steve McIntyre
On Sun, Oct 02, 2022 at 04:43:47PM +0200, Michael Biebl wrote:
>
>Hi Steve,
>
>thanks for the update!
>
>Am 02.10.22 um 16:27 schrieb Steve McIntyre:
>
>> * Tweaks to add the non-free-firmware section in the apt-setup module
>>if desired/needed.
>
>...
>
>> If you think I've missed anything here, please let me and Cyril know -
>> the best place would be the mailing list
>> (debian-b...@lists.debian.org).
>
>What's the plan for upgraded systems with an existing /etc/apt/sources.list.
>Will the new n-f-f section added on upgrades automatically(if non-free was
>enabled before)?

So this is the one bit that I don't think we currently have a good
answer for. We've never had a specific script to run on upgrades (like
Ubuntu do), so this kind of potentially breaking change doesn't really
have an obvious place to be fixed.

Obviously we'll need to mention this in the release notes for
bookworm. Should we maybe talk about adding an upgrade helper tool?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Into the distance, a ribbon of black
Stretched to the point of no turning back



Firmware GR result - what happens next?

2022-10-02 Thread Steve McIntyre
Hi all!

[ I've also blogged about this - see
  https://blog.einval.com/2022/10/02#firmware-vote-result ]

I'm assuming that there will be no surprises and Kurt will shortly
confirm the result that devotee reported already [1]. :-)

We have quite a few things to do now, ideally before the freeze for
Debian 12 (bookworm), due January 2023 [2]. This list of work items is
almost definitely not complete, and Cyril and I are aiming to get
together this week and do more detailed planning for the d-i
pieces. Off the top of my head I can think of the following:

* Update the SC with the new text, update the website.

* Check/add support for the non-free-firmware section in various
  places:
  + d-i build
  + debian-cd
  + debmirror (?)
  + ftpsync (?)
  + Any others?

* Uploads of firmware packages targeting non-free-firmware.

* Extra d-i code to inform users about what firmware blobs have been
  loaded and the matching non-free-firmware packages. Plus information
  about the hardware involved. Maybe a new d-i module / udeb for this?
  Exact details here still TBD. Probably the biggest individual piece
  of work here.

* Tweaks to add the non-free-firmware section in the apt-setup module
  if desired/needed.

* An extra boot option (a debconf variable) to disable loading extra
  firmware automatically, then exposed as an extra option through the
  isolinux and GRUB menus. d-i "expert mode" can also be used to tweak
  this behaviour later, except (obviously) for things like audio
  firmware that *must* be loaded early if they're going to be useful
  at all.

* Update the image build scripts to include the n-f-f packages, only
  build one type of image. I'll do my best to keep config and support
  around too for images without n-f-f included, to make it easier to
  still build those for people who still want them.

* Matching updates to docs, website, wiki etc.

* ...

If you think I've missed anything here, please let me and Cyril know -
the best place would be the mailing list
(debian-b...@lists.debian.org). If you'd like to help implement any of
these changes, that would be lovely too!

[1] https://lists.debian.org/debian-vote/2022/10/msg0.html
[2] https://lists.debian.org/debian-devel/2022/03/msg00251.html

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
There's no sensation to compare with this
Suspended animation, A state of bliss



Re: General resolution: non-free firmware

2022-08-30 Thread Steve McIntyre
Thorsten Glaser wrote:
>Phil Morrell dixit:
>>> Is there support for something like A but not enabled by default?
>>> That is, you have to actively select a nōn-default option
>>I don't believe so, because that doesn't solve the problem at hand. How
>>exactly do you select a non-default option if you cannot see or hear it?
>
>You see it in the bootloader, or if not, can append it manually to the
>kernel command line so that the initrd and d-i see it both. (I’m willing
>to compromise on having early pre-initrd microcode updates always loaded
>which would be the one thing we could not easily toggle on/off from the
>initrd and/or d-i.)

Please go and *read* and *respond* in debian-vote. The discussion is
there, not here.

You've utterly missed Phil's point about people not seeing or hearing
boot options. Go and read my first mail in the thread for context.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Starting the firmware GR - see mail on d-vote

2022-08-18 Thread Steve McIntyre
Hi all!

Sorry for the delay on this, I've been really really busy. :-(

I think it's time we started on the firmware GR, so I've mailed the
-vote list:

  https://lists.debian.org/debian-vote/2022/08/msg00001.html

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"C++ ate my sanity" -- Jon Rabone



Re: Bug#1014908: ITP: gender-guesser -- Guess the gender from first name

2022-07-16 Thread Steve McIntyre
Roberto C. Sánchez wrote:
>On Thu, Jul 14, 2022 at 11:14:43AM +0100, Steve McIntyre wrote:
>> 
>> Do you have a real use for this package? 
>
>Why in the world is that even a relevant question?  There are plenty of
>packages in the archive which are useful to essentially nobody apart
>from the maintainer and there are even packages which are maintained
>without being useful to the maintainer at all (but rather useful to
>others).

I think it's a valid question to ask.

>> There are a *lot* of issues
>> in this area, and mis-gendering people is not something to risk
>> lightly...
>
>"There are a *lot* of issues in this area" seems rather nebulous.  In
>which area?  Given the fact that we have clear and rather unambiguous
>guidelines for what constitutes software which is appropriate for
>inclusion in the archive, and given that on its face this software does
>not seem to be in conflict with any of those guidelines, what then is
>the problem?

I'll link to

  
https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/

again, as a start. Assuming *anything* about names is iffy at best,
and trying to derive other information (whether that's gender, age,
nationality, whatever) from names is unreliable as all hell. When
there is the potential for *also* causing offense from that unreliable
information then I'd hope that people would know better.

>BTW, I'm not interested in any sort of "well I don't like ..." or
>"such and such could offend so and so ..." sort of arguments.

Thanks, I'm well aware that you don't care. Maybe you could try?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Bug#1014908: ITP: gender-guesser -- Guess the gender from first name

2022-07-16 Thread Steve McIntyre
Edward wrote:
>Steve McIntyre  wrote:
>> 
>> Oh, not *another* package that tries to guess things from names.
>> 
>> Do you have a real use for this package? There are a *lot* of issues
>> in this area, and mis-gendering people is not something to risk
>> lightly...
>
>I can add a warning to the package about problems guessing things from names,
>or I'm happy to retract the ITP.

At the very least I think a warning would be useful, yes.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Bug#1014908: ITP: gender-guesser -- Guess the gender from first name

2022-07-16 Thread Steve McIntyre
Adrian Bunk wrote:
>On Thu, Jul 14, 2022 at 04:05:35PM +0200, Jeremy Bicha wrote:
>>...
>> Debian has a Diversity Statement [1] which says that Debian welcomes
>> people regardless of how they identify themselves. Trans people and
>> non-binary people face a lot of discrimination, harrassment and
>> bullying around the world.
>
>Our Diversity Statement says that Debian "welcomes and encourages 
>participation by everyone".
>
>People who express how they identify themselves by having a swastika 
>tattoo on their forehead also face a lot of discrimination, harrassment 
>and bullying around the world. Our Diversity Statement makes it clear 
>that we are welcoming and encouraging their participation and are not 
>ourselves discriminating against them.

And, to add the bit that a lot of people conveniently ignore when
trying to make strawman arguments:

"We welcome contributions from everyone as long as they interact
constructively with our community."

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Bug#1014908: ITP: gender-guesser -- Guess the gender from first name

2022-07-16 Thread Steve McIntyre
Adam Borowski wrote:
>On Thu, Jul 14, 2022 at 04:05:35PM +0200, Jeremy Bicha wrote:
>> > > >* Package name: gender-guesser
>
>> Debian has a Diversity Statement [1] which says that Debian welcomes
>> people regardless of how they identify themselves. Trans people and
>> non-binary people face a lot of discrimination, harrassment and
>> bullying around the world. That bad treatment of these people is
>> against Debian's core values.
>
>Unless they're Jewish, believe that a woman should be allowed to abort a
>Down syndrome fetus, believe that there's more than just a name to the
>gender, or have a kind of transsexualism that matches their life's
>experiences and is detectable by brain imaging but the loud group says
>doesn't exist.
>
>The inconsistency here is astounding.

I genuinely have no clue what you're trying to say here.

Are you actually somehow claiming that Debian's core values include
bad treatment of Jews and those other groups? Seriously, WTF?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Bug#1014908: ITP: gender-guesser -- Guess the gender from first name

2022-07-14 Thread Steve McIntyre
Marc Haber wrote:
>On Thu, 14 Jul 2022 12:54:52 +0100, Steve McIntyre 
>wrote:
>>And I see you uploaded ~immediately - why even bother with an ITP?
>
>Is it proper procedure to upload without an ITP?

IMHO there are 2 points to an ITP:

 * to save effort in case two people might be working on the same
   package
 * to invite discussion on debian-devel / elsewhere

If people post an ITP and upload iummediately, then I don't think that
helps on either count.

If the only reason for the ITP is to make lintian quiet then I think
that's a total waste of time - it's following a guideline blindly
without understanding the reason for it.

How do others feel?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Bug#1014908: ITP: gender-guesser -- Guess the gender from first name

2022-07-14 Thread Steve McIntyre
Steve McIntyre wrote:
>edw...@4angle.com wrote:
>
>>Package: wnpp
>>Severity: wishlist
>>Owner: Edward Betts 
>>X-Debbugs-Cc: debian-devel@lists.debian.org, debian-pyt...@lists.debian.org
>>
>>* Package name: gender-guesser
>>  Version : 0.4.0
>>  Upstream Author : Israel Saeta Pérez 
>>* URL : https://github.com/lead-ratings/gender-guesser
>>* License : GPL-3 & GFDL-1.2+
>>  Programming Lang: Python
>>  Description : Guess the gender from first name
>
>Oh, not *another* package that tries to guess things from names.
>
>Do you have a real use for this package? There are a *lot* of issues
>in this area, and mis-gendering people is not something to risk
>lightly...

And I see you uploaded ~immediately - why even bother with an ITP?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Bug#1014908: ITP: gender-guesser -- Guess the gender from first name

2022-07-14 Thread Steve McIntyre
edw...@4angle.com wrote:

>Package: wnpp
>Severity: wishlist
>Owner: Edward Betts 
>X-Debbugs-Cc: debian-devel@lists.debian.org, debian-pyt...@lists.debian.org
>
>* Package name: gender-guesser
>  Version : 0.4.0
>  Upstream Author : Israel Saeta Pérez 
>* URL : https://github.com/lead-ratings/gender-guesser
>* License : GPL-3 & GFDL-1.2+
>  Programming Lang: Python
>  Description : Guess the gender from first name

Oh, not *another* package that tries to guess things from names.

Do you have a real use for this package? There are a *lot* of issues
in this area, and mis-gendering people is not something to risk
lightly...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: feedback for NEW packages: switch to using the BTS?

2022-04-29 Thread Steve McIntyre
Paul Wise wrote:
>
>During the discussions about NEW on debian-devel in recent times, I had
>the idea that instead of the current mechanism of sending REJECT mails,
>Debian could switch to using the BTS for most feedback on NEW packages.
>
>This means that most discussion about NEW packages would become public,
>but of course the ftpmasters could opt to send private mail instead if
>in some cases if there were sensitive issues to be discussed.
>
>The ftpmasters could simply file severity serious bug reports against
>NEW packages that have issues blocking their entry into Debian. When
>there are minor issues noticed at the same time, then file bugs of a
>lower severity. Only when a NEW package has not had its serious bugs
>fixed in a long time would an eventual removal and REJECT mail happen,
>perhaps after a few months of zero action on the bug reports.

Just to clarify: is this suggesting that packages from NEW would end
up in the archive even with serious bugs? If not, what's the point of
the "eventual removal" above? I'm not following you here...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: shim-signed

2022-04-28 Thread Steve McIntyre
Tollef Fog Heen wrote:
>]] Hanno 'Rince' Wagner 
>> 
>> I am a very firm believer of giving people as much information as
>> possible while being responsible. Meaning, that I would love to have
>> that documentation - including a big warning sign which sais "if you
>> follow this path, you may brick your machine and this is your problem,
>> not ours". If someone is interested to learn _how_ the security is
>> done and implemented, why should this be unavailable?
>
>Sadly, warnings generally don't work because people will ignore them and
>break their systems and then blame the people writing the
>documentation, causing load and grief on people were trying to be
>helpful by writing the docs.
>
>I don't think we should invest a lot into writing the docs required
>because we can use that effort elsewhere.  Documentation requires
>maintenance, just like everything else and if it's rarely used, we get
>little value out of that effort.  If somebody is very eager to write and
>maintain that documentation over time, by all means, but we haven't seen
>anyone step up to do so.

+1

Alongside doing technical stuff, I've written a fair amount of
user-facing docs for UEFI, shim and secure boot over the last few
years. In the limited time I have available, I've tried to focus on
the common cases for people using an expected simple setup. I'd *love*
some help to cover more of the space.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: shim-signed

2022-04-28 Thread Steve McIntyre
The Wanderer wrote:
>On 2022-04-26 at 10:14, Marc Haber wrote:
>
>> On Sat, 23 Apr 2022 18:21:47 +0100, Steve McIntyre
>>  wrote:
>
>>> Alternatively, people can build replacement shim-signed packages
>>> using their own root of trust if desired. If we had a large enough
>>> number of users wanting a different root of trust, we could even
>>> offer our own different shim-signed package to match.
>> 
>> I would probably prefer to have grub an/or the kernel signed,
>> avoiding additional code, but maybe having some explanation would
>> convince me that the shim actually improves things additionally to
>> adding complexity.
>
>My understanding has always been that the point of having a
>Microsoft-signed shim, rather than having Microsoft sign GRUB or the
>kernel, is to A: avoid the need for round-trip with Microsoft's signing
>facilities every time the GRUB or kernel packages are updated, and B:
>ensure that end-users can still build their own kernels (et cetera)
>without having to go through the Microsoft signing process, even if
>their systems are set up to take advantage of the signed shim.

Correct on both counts. There's also:

  C: Microsoft will not sign GPL software here

Shim is deliberately licenced permissively to get around that issue.

>(And the point of having Microsoft sign it, rather than using a signing
>key under the control of e.g. Debian, is that Microsoft's key is already
>considered valid by the relevant firmware environments - including the
>ones that can't be told to add another key to the list of valid ones.
>That avoids having another barrier to entry, in the form of a set of
>steps at the start of the install process which is going to be different
>per UEFI designer, and is also going to be complex and unintuitive from
>the perspective of a non-technical potential new user.)

Nod. As we found in the Arm ecosystem a few years ago when discussing
a similar setup for SB, it's also *very* difficult to find people who
are capable, willing, large and trusted enough to act as the CA. Linux
users may not like it that Microsoft are involved here, but system
vendors also care here. There's potentially a huge liability for
broken systems if somebody screws up...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: shim-signed

2022-04-28 Thread Steve McIntyre
The Wanderer wrote:
>On 2022-04-26 at 18:05, Paul Wise wrote:
>
>> On Tue, 2022-04-26 at 20:41 +0200, Bastian Blank wrote:
>> 
>>> secure boot signing process at Microsoft is a review-sign process
>> 
>> What kind of review are Microsoft doing of the Debian shim?
>> 
>> Are they reviewing the source and checking for a reproducible build?
>
>I'd be curious to have a more in-depth answer to this, myself.
>
>My understanding has always been that they check to make sure that what
>they're signing is not visibly malicious, and in most cases also that it
>can't chain to load something else (which isn't signed, and might be
>malicious). Since the entire purpose of the shim - at least as I
>understand it - is to chain to load something else, clearly either that
>understanding is not correct, or they're making an exception for the
>case of the shim.

Microsoft themselves *don't* do direct code review of the shim
submissions; they acknowledged some time ago that they didn't have
direct knowledge good enough to make this sensible. Instead, there is
a team of trusted distro maintainers who have stepped up to revies
submissions. See

  * https://github.com/rhboot/shim-review
  * https://github.com/rhboot/shim/wiki

for more information about what we look for. Every single patch that's
applied to a signed shim will be reviewed by the community, and we
also want to see what patches people have aplied to Grub, Linux,
etc. too.

We need a reproducible build for shim so that we can check that the
shipped binary for signing matches what we can rebuild ourselves.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: shim-signed (was: Firmware - what are we going to do about it?)

2022-04-26 Thread Steve McIntyre
Marc Haber wrote:
>On Sat, 23 Apr 2022 18:21:47 +0100, Steve McIntyre 
>
>>Better than that, our shim-signed source package always double-checks
>>things here. At build time it removes the Microsoft signature and
>>compares that shim binary to the binary that we submitted for
>>signing. We would spot immediately if there was any code added.
>
>And if that check fails at build time, the Debian process refrains
>from putting a Debian signature on the deb and from uploading? Can the
>end user build the shim herself, remove the signature from the signed
>shim and compare the binary, preferably in a documented way?

Look at the shim-signed source - the build will fail if the code has
changed.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it

2022-04-23 Thread Steve McIntyre
Steven Robbins wrote:
>
>Luca Boccassi wrote:
>
>> Personally, I'd even go for option 4, so that other drivers are covered
>> too (the general advice that can be found on the internet for users
>> with nvidia hardware seems to be: "avoid Debian, go Ubuntu/Mint/etc",
>> which is just a sad state of affairs). But option 5 is already a great
>> improvement upon the status quo.
>
>Agree!  
>
>The original post did mention video cards, but I'm left unsure whether the 
>non-free stuff in the NVidia case, for example, would fall into "firmware" 
>(hence included) or "drivers".  If the latter, my sense is that Option 5 was 
>intended to be narrowly focused and exclude such drivers.  I'd rather support 
>a wider focus that would include drivers -- basically any "non-free hardware 
>support package".  So if Option 5 is narrow and Option 4 is wide-open "non-
>free" maybe there's room for an option in between?

I have no desire to add a wider set of packages from non-free onto our
media, I'm afraid. I'm entirely focused on firmware and **not**
drivers. As and when we start to draft a GR to formalise what the
project wants, feel free to add an option for that too but I
personally wouldn't expect it to gain much traction.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: shim-signed (was: Firmware - what are we going to do about it?)

2022-04-23 Thread Steve McIntyre
Marc Haber wrote:
>On Fri, 22 Apr 2022 11:16:42 +0200, Philip Hands 
>wrote:
>>I understand the urge to insist upon absolute DFSG purity in the media
>>we produce, but when it comes to wanting to avoid every last shred of
>>data that we could not regenerate ourselves, I think we crossed that
>>line some time ago.
>>
>>I'm thinking of shim-signed, which is included in our official media.
>>
>>Despite being free software in source form, it is signed by Microsoft,
>>and can only be expected to work with that signature ... which we cannot
>>create.
>>
>>On most (all?) hardware one is able to avoid UEFI secure-boot, so won't
>>need to use shim-signed, but I'd imagine that some hardware insists on
>>secure-boot, or the opt-outs are somehow broken and so is not usable
>>without shim-signed.
>
>Excuse me for asking a user question on -devel, but do we have any
>docs where someone explains how much a security trade off is
>shim-signed relativ to the optimum? I think that using shim-signed is
>surely worse than a directly signed kernel, but I don't know whether I
>can tell my system (or shim-signed?) to accept MY or Debian's signed
>kernel without the Microsoft intermediate signature, and whether this
>is any more secure than running an encrypted system without secure
>boot at all.

We don't have good docs around this in general (hey, it's security
software - it's against the law to write good and complete docs!), but
I've certainly discussed this with a few folks over the years.

Fundamentally, shim is a compromise. It lets us use an existing root
of trust (that's already installed on the vast majority of x86
machines) to bootstrap our own secure setup.

If you don't like the fact that Microsoft's keys are involved. it's
possible on a lot of machines to enrol your own keys and remove
Microsoft's entirely. If you go that way, you could absolutely sign
grub and/or the kernel directly. But that's not something that's easy
to do - it's not likely to work well for the vast majority of users.

Running an encrypted system without secure boot *at all* is a
difficult thing to support well. The entire point of SB is that the
firmware can use keys to validate the next stage in the boot
process. An *encrypted* kernel stops other people logging in to your
system, but it does not give you protection against somebody tampering
with the system behind your back and doing a MitM attack.

Alternatively, people can build replacement shim-signed packages using
their own root of trust if desired. If we had a large enough number of
users wanting a different root of trust, we could even offer our own
different shim-signed package to match.

...

>>If not, is the problem having other blobs of data on the media that we
>>also cannot generate, or is it the licensing of that data, or something
>>else?
>
>We can compile shim-signed and compare the signed code with our own
>object code, can't we?  That we we would only have to worry about the
>validity and benignness of the signature and not worry about having
>undocumented functionality in the signed code.

Better than that, our shim-signed source package always double-checks
things here. At build time it removes the Microsoft signature and
compares that shim binary to the binary that we submitted for
signing. We would spot immediately if there was any code added.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-21 Thread Steve McIntyre
Andrey Rahmatullin wrote:
>
>On Wed, Apr 20, 2022 at 12:53:46PM -0500, Devin Prater wrote:
>> But back on topic, would the nonfree DVD ISO's have more firmware on them
>> than the CD version? Or is that just for offline installs?
>As far as I understand it there is just one set of non-free firmware for
>including in the ISOs and separate drives, which consists of all non-free
>firmware found in the archive.

That's definitely the intention, yes. There may be *minor* differences
in the lists that are in use in various places, as different people
have written the scripts involved. This is actually another place
where we'd benefit from the new non-free-firmware component - we'd be
able to just consistently rely on *that* list of packages.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-21 Thread Steve McIntyre
Russ Allbery wrote:
>Steve McIntyre  writes:
>
>> Thanks! That's a really good question, and one that we should also
>> include on the GR. I'd split my option 5 into two:
>
>> 5. Include non-free firmware but do not enable it by default
>> 6. Include non-free firmware and enable it by default
>
>> In either case, we'd make the opposite choice available via a d-i kernel
>> command line option and a boot menu option. I think that makes sense?
>
>I agree with this option split, but that reminds me of a different
>procedural note.
>
>While I recognize and respect the desire to create a comprehensive ballot,
>I'm still going to advocate for proposing a GR only with the options that
>the person proposing the GR would vote above NOTA, and possibly only your
>preferred options.

ACK, that's fair and reasonable.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-20 Thread Steve McIntyre
Hey Ansgar!

Ansgar wrote:
>On Wed, 2022-04-20 at 17:11 +0100, Steve McIntyre wrote:
>> > Russ Allbery wrote:
>> > 1. Purely free installation.
>[ Other options ]
>> > 4. Enable non-free firmware and enable normal upgrades, [...]
>[...]
>> Now, the *default* is going to be the hard choice for us to make.
>
>Do you think the choice for the default should be part of a GR too, a
>separate GR or decided some other way?

Thanks! That's a really good question, and one that we should also
include on the GR. I'd split my option 5 into two:

5. Include non-free firmware but do not enable it by default
6. Include non-free firmware and enable it by default

In either case, we'd make the opposite choice available via a d-i kernel
command line option and a boot menu option. I think that makes sense?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-20 Thread Steve McIntyre
Russ Allbery wrote:
>Jonas Smedegaard  writes:
>
>In other words, rather than having to do what one does now and choose
>between the free installer and the non-free installer, my understanding of
>option #5 is that there would be one install image, but there could then
>be a prompt asking you whether you want to install non-free firmware.  We
>could even offer a few different options (with the caveat that options
>tend to confuse users, so we may not want to add too many or gate them
>behind an advanced mode):
>
>1. Purely free installation.
>2. Enable non-free firmware in the installer but don't put it on the
>   installed system.  (Not sure how useful this is, but I could see
>   needing non-free firmware to bootstrap from wifi but the running system
>   may eventually not use the non-free firmware.)
>3. Enable non-free firmware and install it on the system but pin it so
>   that it's never upgraded by default.
>4. Enable non-free firmware and enable normal upgrades, similar to adding
>   the non-free archive area today but only adding the firmware archive
>   area.
>
>I think 1 and 4 are the most useful options, and I'm not sure how many
>people really want 2 or 3, but if there are enough people who want them, I
>don't see any technical barriers to adding them.

Nod, exactly. We can add those options via boot flags and menu
options, with later d-i screens too to allow the choice (maybe in
advanced mode). That's probably the easiest way to manage it.

Now, the *default* is going to be the hard choice for us to make. With
the example of blind people using d-i, we'll want to make an easy
option for those people to boot the installer with all firmware
enabled and installed - see the firmware-sof-signed package that
they'll need to get audio prompts during installation.

>I feel professionally obligated to argue that Debian should, *by default*,
>upgrade anything that it installs, since from a security standpoint that
>is the least risky default configuration (with, as always, the caveat that
>there are special cases with different security models for which this
>default isn't appropriate).  But that doesn't rule out a prompt or
>allowing a user to turn this off if they want to.

Yup.

>> I agree that we should make it easier for our users to choose to trust 
>> black magic "stuff" that they need to enable their devices.
>
>> I do not think that we should impose on our users to trust black magic
>> by default, though.
>
>I think this is a somewhat different question than whether we put the
>firmware on the default installation media so that it's *available* if
>users want it.

Nod.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-20 Thread Steve McIntyre
Paul Wise wrote:
>
>On Tue, 2022-04-19 at 01:27 +0100, Steve McIntyre wrote:
>
>> There are a number of issues here that make developers and users unhappy:
>
>There are a couple more issues related to unredistributable firmware:

Oh, I'm quite sure there are more than that even! :-)

>Some firmware is only available in the operating system preinstalled on
>the device and needs to be manually extracted before d-i is run,
>potentially even only from processes running on the preinstalled
>operating system in cases where the storage must be wiped (such as
>Android devices) before an alternative OS like Debian can be installed.
>IIRC there is some laptop WiFi firmware that is like this.

Yup.

>Some firmware is not redistributable and is only available in
>proprietary drivers on websites and is hard to extract from those
>drivers. IIRC some of the proprietary nvidia firmware for use by the
>libre nouveau GPU driver is like this, both signed firmware for very
>new nvidia hardware and unsigned firmware for very old nvidia hardware,
>although the firmware for the old nvidia hardware has libre firmware in
>nouveau, but the libre firmware is/was buggier than the proprietary
>firmware. The tools for extracting the old firmware aren't in Debian. 

Yup.

I don't see us fixing *all* of these issues any time soon. But in
those cases where we *can* redistribute firmware we can make things
easier for users who need it.

And *then* we can explain to them why the non-free firmware is bad for
their freedom, with examples of what they can do to improve things.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-20 Thread Steve McIntyre
Hi Polyna-Maude,

Polyna-Maude R.-Summerside wrote:
>bwt !
>1st I've always saw Debian having brltty support from the start
>2nd Just install the firmware instruction here and your problem will be
>solved.
>https://wiki.debian.org/Firmware
>
>Stop blaiming other people when the problem is a lack of research on
>your part and expectation all work "out of the box" in all situation.
>
>Take destiny into your own hand.

Please tone your argument down here.

As developers we're having a discussion about how to make things work
better and more easily for our users. Devin's description of the
troubles they had are entirely on-topic and useful in the context of
that discussion. Castigating them here is *not* helpful.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-20 Thread Steve McIntyre


Jeremy Stanley wrote:
>On 2022-04-19 01:27:46 +0100 (+0100), Steve McIntyre wrote:
>[...]
>> Along with adding non-free firmware onto media, when the installer
>> (or live image) runs, we should make it clear exactly which
>> firmware packages have been used/installed to support detected
>> hardware. We could link to docs about each, and maybe also to
>> projects working on Free re-implementations.
>[...]
>
>It's probably what you meant, but just to be clear, as a user I'd
>also want to know which of the firmware packages used/installed were
>pulled from non-free and what devices prompted their addition.
>Something like "The following packages do not meet Debian Free
>Software Guidelines but were installed because they're necessary in
>order to enable or secure some of your hardware: foo(CPUX21
>processor microcode), bar(PM2743 power management controller),
>baz(RF17G wireless interface), ..."
>
>This would allow me to make better informed decisions, such as:
>
>1. Disable some of these devices if I don't actually use them.
>
>2. Seek out alternative open peripherals which do work without
>proprietary firmware.
>
>3. Reach out to the manufacturer of my device and extol the virtues
>of open firmware.
>
>4. Consider (as you mentioned) working on my own reimplementation.

Nod, that's exactly what I was suggesting. More information for users
here helps them to make decisions like this, absolutely.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Firmware - what are we going to do about it?

2022-04-19 Thread Steve McIntyre
w...@debian.org wrote:
>
>Also, drivers and firmware are different things.

*Totally*. This is one of my pet peeves - many *many* people confuse
the two and talk about "non-free drivers" in Debian when they actually
mean firmware... ARGH.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Firmware - what are we going to do about it?

2022-04-18 Thread Steve McIntyre
er
suggestion, please let us know!

I'd like to take this set of options to a GR, and do it soon. I want to get a
clear decision from the wider Debian project as to how to organise firmware and
installation images. If we do end up changing how we do things, I want a clear
mandate from the project to do that.

My preference, and rationale


Mainly, I want to see how the project as a whole feels here - this is a big
issue that we're overdue solving.

What would I choose to do? My personal preference would be to go with option 5:
split the non-free firmware into a special new component and include that on
official media.

Does that make me a sellout? I don't think so. I've been passionately
supporting and developing Free Software for more than half my life. My
philosophy here has not changed. However, this is a complex and nuanced
situation. I firmly believe that sharing software freedom with our users comes
with a responsibility to also make our software useful. If users can't easily
install and use Debian, that helps nobody.

By splitting things out here, we would enable users to install and use Debian
on their hardware, without promoting/pushing higher-level non-free software in
general. I think that's a reasonable compromise. This is simply a change to
recognise that hardware requirements have moved on over the years.

Further work


If we do go with the changes in option 5, there are other things we could do
here for better control of and information about non-free firmware:

 1. Along with adding non-free firmware onto media, when the installer (or live
image) runs, we should make it clear exactly which firmware packages have
been used/installed to support detected hardware. We could link to docs
about each, and maybe also to projects working on Free re-implementations.

 2. Add an option at boot to explicitly disable the use of the non-free
firmware packages, so that users can choose to avoid them.

Acknowledgements
====

Thanks to people who reviewed earlier versions of this document and/or made
suggestions for improvement, in particular:

  • Cyril Brulebois
  • Matthew Garrett
  • David Leggett
  • Martin Michlmayr
  • Andy Simpkins
  • Neil Williams

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Who needs computer imagery when you've got Brian Blessed?


signature.asc
Description: PGP signature


Re: proposed MBF: packages still using source format 1.0

2022-03-10 Thread Steve McIntyre
Ian Jackson wrote:
>
>1. Why is 1.0-without-diff not always worse than 3.0 (native) ?
>
>1.0 native is sometimes better than 3.0 (native) because dpkg-source
>refuses to build a 3.0 native package with a Debian revision in its
>version number.
>
>This prohibition exists solely because of a doctrinal objection to
>native-format packages with Debian revisions.  There is no technical
>reason why this restriction could not be lifted.  I sometimes upload
>this way and I have never had anyone report problems[1] with it.
>
>IMO there is nothing wrong with native format packages with Debian
>revisions.  They work just fine.  For a small paockage, this is often
>a good choice, because it avoids dealing with patches at all.

Why on earth *would* you mess around using Debian revisions on a
native-format package, though? IMHO it's pointless and is just going
to confuse people. Unless you can explain a good reason to need this,
I'd argue strongly that the 3.0 native support is DTRT for the
principle of least surprise if nothing else!

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Gmail bounce unauthenticated @debian.org addresses

2022-03-05 Thread Steve McIntyre
Baptiste Beauplat wrote:

>We recently discovered that Gmail started to bounce email from
>mentors.debian.net with the following message:
>
>550-5.7.26 This message does not have authentication information or
>fails to 550-5.7.26 pass authentication
> checks. To best protect our users from spam, the 550-5.7.26 message has
>been blocked. Please visit 550-5.7.26
>https://support.google.com/mail/answer/81126#authentication for more 5
>50 5.7.26 information.

Yup. I've seen this too. Thanks for starting the thread here, which
has prompted useful clues on how to deal with this.

It's maddening to see Google continue to f*ck up mail requirements for
everybody else. Of course, they continue to be (one of?) the biggest
sources of spam on the net and show no interest in doing anything
about it. "Don't be evil" indeed... :-(

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Next attempt to add Blends to Debian installer

2022-01-17 Thread Steve McIntyre
Hi Andreas!

Apologies for keeping you waiting here. For a range of reasons, I've
been struggling to find *any* time to look at this.

Much as I hate to let you down, I think the best policy now is to be
honest (with myself and you!) and say that I'm not going to find time
to do this any time soon. Sorry. :-(

I'm just orphaning some of my packages now, as I've been failing to
keep on top of those already. Other stuff has had to take priority for
too long.

I still think the best route forward is to add new functionality into
debconf and then update tasksel use that. But please don't wait on me
any more. If you can find other volunteers to pick this up, *please*
do.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Google-bait:   https://www.debian.org/CD/free-linux-cd
  Debian does NOT ship free CDs. Please do NOT contact the mailing
  lists asking us to send them to you.



Re: Status of weekly live builds

2021-11-29 Thread Steve McIntyre
Peter wrote:
>
>I've just noticed that the weekly live builds (both the free ones [0] 
>and the unofficial non-free ones [1]) have not been updated since August 
>9, 2021. Is this on purpose or did some machinery get stuck?

I disabled the testing live image builds after the bullseye release,
and I'm waiting for somebody to take over maintaining them.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: partman, growlight, discoverable partitions, and fun

2021-09-28 Thread Steve McIntyre
Hi Nick!

On Tue, Sep 28, 2021 at 12:47:11PM +0200, Cyril Brulebois wrote:
>Hi nick,
>
>[ cc += debian-boot@ ]
>
>nick black  (2021-09-27):
>> Marc Haber left as an exercise for the reader:
>> > But maybe an alternative? I find the partitioning step one of the
>> > most error-prone and hard-to-use parts of non-trivial Debian
>> > installations.
>> 
>> so overall, i've got to say the feedback i heard here was a lot more
>> positive than i was expecting, though there was a bit less than i had
>> hoped for. but perhaps something that can be touched would see more
>> interest?
>
>FWIW I've followed the answers to your mail over the last few days,
>but I haven't had a chance to look at either the video or the slides
>(only 4 days before your initial mail and the one I'm replying to…).

Amen to that!

>At first glance, it seems fine to be experimenting with a different
>partitioner; of course all people are somewhere on the love/hate
>spectrum regarding partman and the zillions of partman-* packages, but
>it's indeed a shell maze and it *probably* could use some heavy lifting.
>I keep hoping that simple use cases are made simple(r)… maybe growlight
>could help there (e.g. “I'd like soft RAID1 with encrypted LVM, all that
>with a UEFI boot — therefore ESP —, without being a storage wizard”).

ACK. I've done a *bit* of hacking around partman over the last few
years - it's heavy going and probably the least well understood part
of d-i... :-/

>I suppose some step (once you've experimented on a growlight-only
>d-i) would be to have both partman and growlight, and let people
>choose (maybe with a flag at boot time, or by entering expert mode or
>whatever), until we have a better idea what works, what doesn't, what
>can be fixed, what cannot, and until a decision is made for the next
>Debian stable release.
>
>Leaving the technical integration aside for a moment, one question
>that comes to mind is whether this would be a one-shot contribution or
>some kind of longer commitment to maintain that different partitioner.
>I seem to remember earlier attempts at revamping the partitioning
>step, which stalled eventually.
>
>(Your recent mail to debian-newmaint@ is a hint; your apparent
>steadiness of those packages maintenance-wise is another; and your
>apparent interest in adding support to possibly missing features yet
>another.)
>
>Of course, one might object that the question is moot as there isn't
>much active development on partman components (even if some patches have
>been submitted over the last few days), but at least that's a known
>(imperfect, but…) beast.

Nod!

>> given that no one seemed to reject the idea out of hand, i'm going to
>> go ahead and rebase my work from 2012 (or more likely look at it once
>> and redo it) in a Salsa fork of d-i, and make some installation media
>> available. forgive me for likely only having x86 available at first.
>> i'll try to have this done within a week or so, and put it up on my
>> server. people can then give it a whirl.
>
>Feel free to touch base with debian-boot@ and/or debian-cd@ once you
>have a working proof of concept that some people have toyed with; we can
>discuss how the “alternative” part could be implemented (different
>images, or both partitioners ship together, with some option/selection —
>people might remember GRUB vs. LILO). I cannot guarantee a timely answer
>(life tends to keep me busy), but you shouldn't see a lack of answer
>after just a few days as if people were not interested.

100% true - expect people are busy, rather than hostile! :-)

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Google-bait:   https://www.debian.org/CD/free-linux-cd
  Debian does NOT ship free CDs. Please do NOT contact the mailing
  lists asking us to send them to you.



Re: Arch triplet for uefi applications

2021-08-11 Thread Steve McIntyre
On Tue, Aug 10, 2021 at 03:19:10PM -0700, Josh Triplett wrote:
>Bastien Roucariès wrote:
>> I am going to compile shell.efi from source.
>> 
>> I whish to install to something stable, but I need an arch triplet in order 
>> to 
>> put in a multiarch (like) location.
>> 
>> I suppose that it will be  x86_64-efi-none (or maybe x86_64-windows-efi  )  
>> and 
>> i686-uefi-none ?

As Simon says, *definitely* not *windows* here please! :-)

>I don't think GRUB's x86_64-efi is an architecture triplet, just a
>GRUB-specific target.
>
>UEFI is effectively an "operating system", insofar as it provides a
>runtime environment with some baseline properties and a set of system
>calls. uefi definitely isn't a "vendor", and the OS shouldn't be "none"
>since there is an OS of sorts.
>
>For that reason, Rust uses the target names "aarch64-unknown-uefi",
>"i686-unknown-uefi", and "x86_64-unknown-uefi". Those seem like the
>right names for these targets in other toolchains, as well.

Nod, agreed. I think that makes sense.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
< sladen> I actually stayed in a hotel and arrived to find a post-it
  note stuck to the mini-bar saying "Paul: This fridge and
  fittings are the correct way around and do not need altering"



Re: Reconsider sending ITP bugs to debian-devel: a new list?

2021-06-11 Thread Steve McIntyre
Hi Jon!

Jon Dowland wrote:
>
>ITP bugs are copied to debian-devel@. The intention, I think, is to make
>sure that they have many eyes on them.  ITP bugs often get feedback from
>readers of debian-devel.
>
>I think this is valuable. However, it's one job/task/role, and sometimes
>One wishes to focus on other jobs/tasks/roles instead. When I subscribed
>to debian-devel directly, I most often filtered ITP mail into a separate
>mailbox, to read at separate times. Nowadays, I read most Debian lists
>via NNTP gateways, and filtering ITPs is not quite so convenient (not
>least, because I don't easily have an analogue of the ITP-dedicated
>mailbox I used to.). But besides me, I think a better "default" for
>debian-devel would be not to have the ITPs.
>
>I think the ITP mails can make reading the rest of the list difficult
>without extra local filtering or steps.  Some times they are the
>majority of the list traffic. I think it would be better if
>ITP mail went to a separate, dedicated list, e.g. "debian-itp" to which
>contributors are encouraged to subscribe and participate.

To be honest, I think if we did that we'd lose just about all the
reviews that currently happen. The whole point of sending ITPs to
d-devel is that they will be seen by a wider audience, but I can't see
many signing up for YA mailing list for them.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"We're the technical experts.  We were hired so that management could
 ignore our recommendations and tell us how to do our jobs."  -- Mike Andrews



Re: Next attempt to add Blends to Debian installer

2021-03-06 Thread Steve McIntyre
Hey Andreas!

On Tue, Mar 02, 2021 at 02:46:52PM +0100, Andreas Tille wrote:
>On Thu, Oct 08, 2020 at 10:23:19AM +0100, Steve McIntyre wrote:
>> Hey Andreas! I hope you're keeping well!
>> 
>> On Tue, Oct 06, 2020 at 06:08:02PM +0200, Andreas Tille wrote:
>> >> (Overdue!) update: I've been hacking on this for a while, and I hope
>> >> to have a prototype for testing up shortly. It works fine on my local
>> >> system, but in a test d-i build it fails totally so I've clearly
>> >> missed something! Debugging that now...
>> > 
>> >I wonder whether I might have missed some information whether there
>> >is something I could test meanwhile.
>> 
>> I'm afraid that various higher-priority interrupts came up (new job,
>> UEFI security work) and I got side-tracked for a while. You must be
>> psychic - I just started picking things up again last weekend.
>
>I admit I did not payed much attention on the development of tasksel and
>thus the chances to select Blends right from the installer.  The topic
>remains to be urgent for all Blends - but I'm afraid it will be to late
>for Debian 10.  Or did I missed something and the status is promising
>for this release? 

Apologies, I think I've let you down :-( .

I've made a *small* amount of progress at hacking on debconf (route
#2). But again I've had other things come up, not least another round
of Secure Boot fixes. We're not going to have changes in for
Bullseye. Sorry. :-(

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Getting a SCSI chain working is perfectly simple if you remember that there
  must be exactly three terminations: one on one end of the cable, one on the
  far end, and the goat, terminated over the SCSI chain with a silver-handled
  knife whilst burning *black* candles. --- Anthony DeBoer



Re: -1 (Re: Making Debian available)

2021-01-29 Thread Steve McIntyre
Paul wrote:

>
>During install, the installer asks if you have a disk with drivers on 
>for this closed hardware, I don't know what it wants at this point.
>
>If we could insert a 2nd usb disk, or anything with the correct drivers 
>on, it may help.

Argh. Pet peeve. It asks for a disk with *firmware* on it, not
*drivers*. Please stop confusing the two.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: RFC: raising ca-certificates package Priority to standard or important

2021-01-22 Thread Steve McIntyre
Hey Julien,

On Fri, Jan 22, 2021 at 12:00:56PM +0100, Julien Cristau wrote:
>On Thu, Jan 21, 2021 at 02:47:25PM -0300, Antonio Terceiro wrote:
>> On Thu, Jan 21, 2021 at 03:10:47PM +0100, Julien Cristau wrote:
>> > And which of standard or important made most sense (AIUI, standard
>> > means "installed by default in d-i" and important means "installed by
>> > default in debootstrap").
>> 
>> wget is already Priority: standard and recommends ca-certificates, so it
>> seems to me that making it standard would be a noop in practice for most
>> of the systems installed by d-i.
>> 
>> On the other hand, all cases that I remember seeing a problem caused by
>> missing ca-certificates was in systems not installed by d-i, such as
>> containers, vm images, etc. Based on that, I would make it important.
>
>Here's my thinking on this:
>I would expect "standard" to get installed on "general purpose" VM
>images, and "important" *not* to get installed on "minimal" container or
>VM images.  Looking at the docker debian image build script just now[1],
>it seems to pull in required packages + iproute2 and ping, so it has its
>own selection that doesn't include "important" priority.  So changing
>the severity, by itself, won't change anything unless we go all the way
>to "required" which feels like it'd be going too far (but then I also
>don't think apt should be "required").
>If there are specific examples where you think "important" would help
>I'd be interested; right now I'm sort of favouring "standard" as good
>enough.

Sounds like good logic to me.

Thanks for looking into this!

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
Can't keep my eyes from the circling sky,
Tongue-tied & twisted, Just an earth-bound misfit, I...



Re: Making Debian available

2021-01-19 Thread Steve McIntyre
Bjørn wrote:
>Steve McIntyre  writes:
>
>> Marc Haber wrote:
>>>
>>>I was not aware of that feature. It is good to have that, but I would
>>>be embarrassed to seriously suggest this way because we can't manage
>>>to get WLAN working in the installer for political reasons.
>>
>> Are we seriously just going to describe our Free Software goals as
>> "political reasons"? Should we just abandon them?
>
>FWIW, I did not read Marc that way.

Fair enough.

>Somehow, the Free Software goals have been interpreted to mean that
>there is a difference in "free" between firmware on device internal
>flash and firmware on host ssd.  This makes no sense from a technical
>point of view.  Which makes the interpretation political if we assume
>that the decision is made by otherwise sane people ignoring technical
>arguments.

To a simple end user, there might not be a difference. They have
firmware for their device.

However, in the latter case Debian has shipped non-free stuff. That is
a big shift in our position. Don't get me wrong: I'm not saying this
is an impossible place for us to go to. But before we do that we
should have an open and honest debate about it.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Making Debian available

2021-01-19 Thread Steve McIntyre
Marc Haber wrote:
>On Mon, 18 Jan 2021 16:35:01 +0000, Steve McIntyre 
>wrote:
>>Marc Haber wrote:
>>>I was not aware of that feature. It is good to have that, but I would
>>>be embarrassed to seriously suggest this way because we can't manage
>>>to get WLAN working in the installer for political reasons.
>>
>>Are we seriously just going to describe our Free Software goals as
>>"political reasons"? Should we just abandon them?
>
>No, we shouldn't, but we should drop the double standards that we
>obviously apply towards docs and firmware.

Sorry, I'm not following you on that. Can you expand on that please?
How are we treating docs differently?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Making Debian available

2021-01-18 Thread Steve McIntyre
[ Catching up on this thread a little late... ]

Ansgar wrote:
>On Fri, 2021-01-15 at 15:30 +, Jeremy Stanley wrote:
>> On 2021-01-15 12:11:06 +0100 (+0100), Emanuele Rocca wrote:
>> [...]
>> > So the current situation is that we make an active effort to
>> > produce two different types of installation media: one that works
>> > for all users, and one broken for most laptops.
>> [...]
>> 
>> The one you say "works for all users" doesn't "work" for me because
>> it contains proprietary closed-source software I don't want.
>
>Then don't install them?
>
>Debian's Social Contract states "We encourage CD manufacturers to read
>the licenses of the packages in these areas [non-free & contrib] and
>determine if they can distribute the packages on their CDs."  Maybe we
>should do that for the CD images we manufacture? :)

There's a major difference here - do we want Debian's *official* media
to include non-free stuff? We've had this discussion a few times,
including in person back at DC15 at least. Back then, the overwhelming
response was *no*. We can change that, but it's not something to do
lightly.

We *can* do a better job of pointing people at the media with non-free
firmware included. I've added a few more links in various places, but
IMHO we desperately need a better set of download (etc.) pages rather
than just bodging changes in to the existing inadequate pages. See
#819664, for example.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Making Debian available

2021-01-18 Thread Steve McIntyre
Marc Haber wrote:
>
>I was not aware of that feature. It is good to have that, but I would
>be embarrassed to seriously suggest this way because we can't manage
>to get WLAN working in the installer for political reasons.

Are we seriously just going to describe our Free Software goals as
"political reasons"? Should we just abandon them?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Release status of i386 for Bullseye and long term support for 3 years?

2020-12-12 Thread Steve McIntyre
Stephan wrote:
>Am Sa, Dez 12, 2020 at 18:09:02 +0200 schrieb Adrian Bunk:
>>4. People who wrongly installed i386 on amd64-capable hardware.
>
>Well, some releases ago befor multi-arch I used to install i386 even on 
>am64-capable hardware if ram was quite low (=< 8GB) and if the chance 
>wasn’t that low that you needed to install ia32-codec to watch ancient 
>video formats.
>
>I wouldn’t do it anymore but at least one system is still in use, and 
>there isn’t a real supported way to upgrade from i386 to amd64.

It's still quite new, but we have a package in the archive for this now:

  https://tracker.debian.org/pkg/debian-crossgrader

It's targeted at systems exactly like yours, tbh. Maybe give it a try?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Debconf - adding "treeselect" type(s)?

2020-12-02 Thread Steve McIntyre
Thomas Goirand wrote:
>On 11/29/20 11:37 PM, Timo Weingärtner wrote:
>> 
>> Would checking "a" automatically also check "a/*"?
>> Is it only about UI, meaning "a/*" would be collapsed under "a"?
>> Shall it be possible to check "a", but uncheck "a/b"?
>> 
>> Grüße
>> Timo
>
>I very much agree that this needs to be discussed, then specified correctly.

I think I've been clear on this bit in the thread? What's missing?

>Also, would that sound crazy if we were to introduce the tree as
>described with json? That's simple enough, so that even a human can do
>it by hand, and also understood by all languages.

json is all well and good for more powerful languages (and yes, I'd be
convinced there!), but nigh-on impossible to do reliably in shell
AFAICS. Shell is (one of) the most common environments for driving
debconf, in package config and postinst scripts. I don't think that's
going to fly.

Oh, except... We'd only have to generate the json from shell, not
parse it. That may be more tractable. Thanks, that could be a good
suggestion!

>Otherwise, what would be the way to describe a tree?

I'm playing with ideas so far, let's see shortly. :-)

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Debconf - adding "treeselect" type(s)?

2020-12-02 Thread Steve McIntyre
Thomas Goirand wrote:
>On 11/30/20 11:18 AM, Steve McIntyre wrote:
>> I'm envisaging treating the Choices *mostly* like in an existing
>> select/multiselect, but with extra decoration to indicate the position
>> in the tree for display. It would then be up to the frontend to decode
>> that and work out a sensible way to display things as best it can. Not
>> sure on the best way to do the decoration, hoping there'll be an
>> available special character or similar that we could use in strings to
>> avoid too big an upheaval here.
>
>囧 [1]

Maybe...

>>> Although these require manual selection, I think they do have at least
>>> some use, and I'd rather keep them going.  It shouldn't be too hard to
>>> get full coverage, pulling in help from specialists if necessary.
>> 
>> I guess so.
>
>How would it be pre-seeded? Just like a multiselect? With only leafs
>that could potentially be in the pre-seed?

That's exactly my plan, yes. The non-leaf bits are just syntactic
sugar for the UI.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Debconf - adding "treeselect" type(s)?

2020-12-01 Thread Steve McIntyre
Timo wrote:
>-=-=-=-=-=-
>
>Hallo Steve McIntyre,
>
>30.11.20 16:36 Steve McIntyre:
>> I'll admit that I'm thinking of this *mostly* in terms of the needs of
>> tasksel so far, but I'd expect switching to a new template type is
>> likely to need a rethink to make best use of them anyway.
>
>In my mind there is also locales where we should have three levels:
>de
>  de_AT
>  de_DE
>[ ] de_DE
>[ ] de_DE@euro
>[ ] de_DE.UTF-8
>en
>  en_DK
>  en_GB
>  en_US

ACK. For the tasksel work I'm also looking at a 3-level tree to
organise the Blends stuff, at least.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Debconf - adding "treeselect" type(s)?

2020-11-30 Thread Steve McIntyre
Colin Watson wrote:
>On Mon, Nov 30, 2020 at 10:24:56AM +0000, Steve McIntyre wrote:
>> Timo wrote:
>> >What are the proposed semantics of this multitreeselect?
>> >
>> >If we imagine something like:
>> >
>> >[ ] a
>> >  [ ] a/b
>> >  [ ] a/c
>> >[ ] b
>> >  [ ] b/a
>> >
>> >Would checking "a" automatically also check "a/*"?
>> >Is it only about UI, meaning "a/*" would be collapsed under "a"?
>> >Shall it be possible to check "a", but uncheck "a/b"?
>> 
>> Yes, I'm thinking just about UI here: my plan would be to not have
>> anything *selectable* at "a" - it would just toggle the display of the
>> "a/*" subtree in those frontends that can display such a thing.
>
>If we took that approach then it wouldn't work so well for the grub2
>case, where "a" would be a whole disk and "a/b" and "a/c" would be
>individual partitions.  (Unless we rephrased the choices to include an
>explicit "Whole disk" option or something.)

That might be the best bet anyway, I think.

I'll admit that I'm thinking of this *mostly* in terms of the needs of
tasksel so far, but I'd expect switching to a new template type is
likely to need a rethink to make best use of them anyway.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Debconf - adding "treeselect" type(s)?

2020-11-30 Thread Steve McIntyre
Colin Watson wrote:
>On Sun, Nov 29, 2020 at 07:21:54PM +0000, Steve McIntyre wrote:
>> On and off, I've been hacking on tasksel for quite a while to improve
>> the UI there and add better support for things like Blends. I've made
>> some progress in my hacking, but I think I've hit a brick wall and I
>> need to change tack. :-/
>> 
>> What I've ended up doing so far is hacking tasksel to give a poor
>> *approximation* of a tree-style layout: classifying some existing
>> tasks under headers and building a tree, then displaying each of the
>> nodes of the tree one level at a time via the existing debconf
>> setup. It just about works, but it's ugly as all hell and I'm not
>> happy with where I've got to. I've sunk a lot of development time into
>> this, but I don't think it's ready to fly this way. :-(
>> 
>> What I *actually* need here is proper support in debconf for
>> tree-style selection. I'm thinking of adding that, adding new types
>> "treeselect" as a tree-equivalent of "select" and "multitreeselect" as
>> an extension of "multitselect". The first one may not even be needed,
>> but would be a trivial simplification of the second, so *meh*.
>
>grub2's maintainer scripts attempt to emulate something a bit like a
>tree-style multiselect by putting "- " at the start of the partition
>descriptions to indicate that they're under the disks.  It's certainly
>not ideal; I'd be open to considering something better, although it
>might take some time to be usable by packages in general.  (tasksel has
>an easier time of it than some, since it's a full debconf-based
>application rather than needing to work at the preconfiguration stage.)

Yup.

>> AFAICS I'd need to add at least basic support for the new type(s) into
>> all the frontends that *can* support it. So, I have a couple of
>> questions:
>> 
>>  1. How flexible is Debconf at coping with a frontend not including
>> support for a type??
>
>Not hugely.  The INPUT command would return an internal error with the
>text "unable to make an input element".  I think we'll need at least
>minimal support across all the frontends, which may need to inform the
>design of the element.

Bah, I was afraid you were going to say that. :-(

For frontends that can't meaningfully deal with a tree (like
showing/hiding sub-trees), I think the best way is to maybe just
display the entire tree and treat it as the equivalent
select/multiselect. It's not great, but at least it should work.

>How were you imagining Choices working here?

I'm envisaging treating the Choices *mostly* like in an existing
select/multiselect, but with extra decoration to indicate the position
in the tree for display. It would then be up to the frontend to decode
that and work out a sensible way to display things as best it can. Not
sure on the best way to do the decoration, hoping there'll be an
available special character or similar that we could use in strings to
avoid too big an upheaval here.

>>  2. Is anybody actually ever using the more obscure (to me!) frontends
>> (e.g. kde, editor)? Is it worth spending time there?
>
>Although these require manual selection, I think they do have at least
>some use, and I'd rather keep them going.  It shouldn't be too hard to
>get full coverage, pulling in help from specialists if necessary.

I guess so.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Debconf - adding "treeselect" type(s)?

2020-11-30 Thread Steve McIntyre
Hi!

Timo wrote:
>29.11.20 20:21 Steve McIntyre:
>> On and off, I've been hacking on tasksel for quite a while to improve
>> the UI there and add better support for things like Blends. I've made
>> some progress in my hacking, but I think I've hit a brick wall and I
>> need to change tack. :-/
>> 
>> What I've ended up doing so far is hacking tasksel to give a poor
>> *approximation* of a tree-style layout: classifying some existing
>> tasks under headers and building a tree, then displaying each of the
>> nodes of the tree one level at a time via the existing debconf
>> setup. It just about works, but it's ugly as all hell and I'm not
>> happy with where I've got to. I've sunk a lot of development time into
>> this, but I don't think it's ready to fly this way. :-(
>> 
>> What I *actually* need here is proper support in debconf for
>> tree-style selection. I'm thinking of adding that, adding new types
>> "treeselect" as a tree-equivalent of "select" and "multitreeselect" as
>> an extension of "multitselect". The first one may not even be needed,
>> but would be a trivial simplification of the second, so *meh*.
>
>What are the proposed semantics of this multitreeselect?
>
>If we imagine something like:
>
>[ ] a
>  [ ] a/b
>  [ ] a/c
>[ ] b
>  [ ] b/a
>
>Would checking "a" automatically also check "a/*"?
>Is it only about UI, meaning "a/*" would be collapsed under "a"?
>Shall it be possible to check "a", but uncheck "a/b"?

Yes, I'm thinking just about UI here: my plan would be to not have
anything *selectable* at "a" - it would just toggle the display of the
"a/*" subtree in those frontends that can display such a thing. So,
yes: it would be possible to hit "a" and then not show have any of
"a/*" selected.

For simpler frontends that can't handle that kind of toggling, I'm
thinking we'd just display the tree nodes ("a", "b") as headings to
the user to group things together. Maybe we could do better - ask an
extra question at that point in the listing to show the user that
sub-tree or not.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Debconf - adding "treeselect" type(s)?

2020-11-29 Thread Steve McIntyre
Hey folks,

On and off, I've been hacking on tasksel for quite a while to improve
the UI there and add better support for things like Blends. I've made
some progress in my hacking, but I think I've hit a brick wall and I
need to change tack. :-/

What I've ended up doing so far is hacking tasksel to give a poor
*approximation* of a tree-style layout: classifying some existing
tasks under headers and building a tree, then displaying each of the
nodes of the tree one level at a time via the existing debconf
setup. It just about works, but it's ugly as all hell and I'm not
happy with where I've got to. I've sunk a lot of development time into
this, but I don't think it's ready to fly this way. :-(

What I *actually* need here is proper support in debconf for
tree-style selection. I'm thinking of adding that, adding new types
"treeselect" as a tree-equivalent of "select" and "multitreeselect" as
an extension of "multitselect". The first one may not even be needed,
but would be a trivial simplification of the second, so *meh*.

Am I crazy to be considering this? I'm *not* sure that we need this to
work in the *general* case (i.e. supporting more packages using this
functionality, supporting all the panoply of Debconf
frontends). However, I'd also expect that other people might disagree
and see more general use cases than just tasksel. :-)

AFAICS I'd need to add at least basic support for the new type(s) into
all the frontends that *can* support it. So, I have a couple of
questions:

 1. How flexible is Debconf at coping with a frontend not including
support for a type??

 2. Is anybody actually ever using the more obscure (to me!) frontends
(e.g. kde, editor)? Is it worth spending time there?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
We don't need no education.
We don't need no thought control.



Re: Next attempt to add Blends to Debian installer

2020-10-08 Thread Steve McIntyre
Hey Andreas! I hope you're keeping well!

On Tue, Oct 06, 2020 at 06:08:02PM +0200, Andreas Tille wrote:
>On Mon, Mar 23, 2020 at 07:16:11PM +0000, Steve McIntyre wrote:
>> >Not yet, I'm afraid. A little too swamped so far, but you're near the
>> >top of my TODO list. I'm hoping to get some time for development on
>> >this in the next couple of months.
>> 
>> (Overdue!) update: I've been hacking on this for a while, and I hope
>> to have a prototype for testing up shortly. It works fine on my local
>> system, but in a test d-i build it fails totally so I've clearly
>> missed something! Debugging that now...
> 
>I wonder whether I might have missed some information whether there
>is something I could test meanwhile.

I'm afraid that various higher-priority interrupts came up (new job,
UEFI security work) and I got side-tracked for a while. You must be
psychic - I just started picking things up again last weekend.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"Further comment on how I feel about IBM will appear once I've worked out
 whether they're being malicious or incompetent. Capital letters are forecast."
 Matthew Garrett, http://www.livejournal.com/users/mjg59/30675.html



Re: Preferred form of modification for binary data used in unit testing?

2020-07-16 Thread Steve McIntyre
Hey Philipp,

Philipp Hahn wrote:
>
>if a *previous* version of a software generated a *buggy* binary
>database, that bug got fixed in a *newer* version and also some
>*recovery* mechanism was added to allow reading that broken format
>*once*, but there is no code the write the *broken* file again. For
>*unit testing* the upstream developers added an *example* of such a
>broken database to their test data.
>What's the preferred form of modification for that data set?
>
>* Should I include a copy of the *broken code* to generate that data?
>* Declare that there in no preferred form for modification, as a
>"open-save"-cycle with the current code will not re-create the bit
>idencial file again.
>* Remove the test data because it is not DFSG conformant and hope the
>Debian build will never break the recovery code.
>* Include instructions on how to re-build the broken version and give
>instructions on how to maybe rebuild a similar broken file.

Firstly, removing the test data would be absurd - less-tested code
does not serve us or our users well. If it happens to be a binary
artifact that cannot be easily recreated, then explain that. The
binary artifact has become the preferred form for modification once
you have it.

In some cases you won't be able to sensibly reproduce the artifact
that causes a problem, but you keep it around to ensure test
coverage. IMHO there is no issue here.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"You can't barbecue lettuce!" -- Ellie Crane



Re: Next attempt to add Blends to Debian installer

2020-03-23 Thread Steve McIntyre
On Mon, Jan 06, 2020 at 04:23:08PM +, Steve McIntyre wrote:
>Hey Andreas!
>
>On Wed, Dec 18, 2019 at 08:23:39AM +0100, Andreas Tille wrote:
>>
>>the first alpha of the installer of Debian 11 is out.  As we talked at
>>DebConf about better Blends support:  Is there anything we can test
>>regarding tasksel?
>
>Not yet, I'm afraid. A little too swamped so far, but you're near the
>top of my TODO list. I'm hoping to get some time for development on
>this in the next couple of months.

(Overdue!) update: I've been hacking on this for a while, and I hope
to have a prototype for testing up shortly. It works fine on my local
system, but in a test d-i build it fails totally so I've clearly
missed something! Debugging that now...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Getting a SCSI chain working is perfectly simple if you remember that there
  must be exactly three terminations: one on one end of the cable, one on the
  far end, and the goat, terminated over the SCSI chain with a silver-handled
  knife whilst burning *black* candles. --- Anthony DeBoer



Re: Y2038 - best way forward in Debian?

2020-02-17 Thread Steve McIntyre
On Mon, Feb 17, 2020 at 09:03:22AM +0100, Wouter Verhelst wrote:
>On Sat, Feb 15, 2020 at 11:41:32PM +0000, Steve McIntyre wrote:
>> Hey John,
>> 
>> John Goarzen wrote:
>> >On Tue, Feb 04 2020, Steve McIntyre wrote:
>> >
>> >The thing that we have to remember is that an operating system is a
>> >platform for running software.  This problem is rather thorny, because:
>> >
>> >1) Some software is provided in only binary form and cannot be
>> >recompiled
>> 
>> Oh, absolutely. In that situation there's not a lot we can sensibly
>> do, modulo telling people to run such things in a time-shifted VM. I'm
>> more worried about making *our* software work in the future.
>
>This feels like a waste of effort, then. The only reason why people want
>to run i386 is "multiarch, because I have this old binary that won't go
>away". For all other stuff, there's amd64. Especially since RHEL doesn't
>even do i386 anymore these days, so ISVs will have to compile for amd64
>if they want it to work on whatever their customers run.
>
>In my opinion, there are really only two viable options:
>
>- Throw away the i386 port, and tell people that we no longer support
>  it;
>- Figure out a way for 32-bit binary-only programs to keep working when
>  they touch a time_t beyond 2038.

Right, that's it for our existing i386 port then. But we do have other
32-bit ports with different ecosystems and requirements - hence why I
started this thread.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
"War does not determine who is right - only who is left."
   -- Bertrand Russell



Re: Y2038 - best way forward in Debian?

2020-02-15 Thread Steve McIntyre
anth...@derobert.net wrote:

...

>Lastly, 64-bit time_t has been tested widely (e.g., on amd64). That's not 
>perfect of
>course since 32-bit archs have smaller basic integer types, but likely a lot 
>less work
>fixing the stray "int"s than adding epochs all over the place. 
>
>PS: Debian-devel is likely the wrong place to redesign C/POSIX functions. 

+1000

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-15 Thread Steve McIntyre
Hey John,

John Goarzen wrote:
>On Tue, Feb 04 2020, Steve McIntyre wrote:
>
>The thing that we have to remember is that an operating system is a
>platform for running software.  This problem is rather thorny, because:
>
>1) Some software is provided in only binary form and cannot be
>recompiled

Oh, absolutely. In that situation there's not a lot we can sensibly
do, modulo telling people to run such things in a time-shifted VM. I'm
more worried about making *our* software work in the future.

>2) Some software can be recompiled but makes assumptions about the size
>of variables, may use int instead of time_t, and other assorted
>messiness

Nod. I'm sure we'll find quite a bit of that, and need to file (and
maybe fix) those bugs. Hell, we're also likely to find some places
where we won't be able to sensibly fix things. But it's better to know
and document those places than not.

>3) Some software is going to break now, due to forward-looking time
>calculations, and for others, it may be fine (or nearly so) even past
>2038 due to timekeeping being only ancillary to its purpose.  For
>instance, I have some old games that are binary-only and really don't
>care what time it is.

Yup.

>This option #1 sounds like a significant effort (because not only would
>we need two versions of libraries, but also of include files).  But it
>certainly passes the "correctness" test better than your option #2.

Sure. It comes down to how long we think we can / want to spend on
this. I'd *hope* that a lot of software *will* work correctly with a
rebootstrap, but of course we know it won't be 100%. I'm concerned
that we don't leave it too long to get on with fixing things - that
will continue to build an ever-growing corpus of broken systems that
people will need to deal with later.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Crossgrading support (was Re: Y2038 - best way forward in Debian?)

2020-02-15 Thread Steve McIntyre
Adam Borowski wrote:
>On Wed, Feb 12, 2020 at 06:10:53PM +0000, Steve McIntyre wrote:
>> 
>> /me ponders - this could be a fun task for a GSoC/outreachy student to
>> hack on, maybe?
>
>Prior art:
>
>* my unfinished https://github.com/kilobyte/crossgrade -- does a lot of
>  error checking and continue-after-problem, but currently stops after
>  crossgrading the essential set
>
>* stuff linked from https://wiki.debian.org/CrossGrading

Ah, cool!

>Problems:
>
>* crossgrades fail _badly_ in a hard to recover way if packages for the
>  two architectures come in different versions (including binNMUs).  This
>  hurts especially if -ports archs are involved.

Yup. Probably best done on top of a stable release, by default, to
avoid the worst of this,

>* arch-specific or local packages are not as bad but 1. crossgrade must
>  know what's safe to remove, 2. what should be left unchanged (and their
>  recursive deps unremoved), 3. there may be non-multiarchable packages
>  within 1. or 2.'s dependency chain

Yup. So I think it would be good to have a tool which can work through
the existing state of a system up-front and analyse what's likely to
work or not.

>* systemd can't handle being crossgraded (I'm a systemd hater, but same was
>  noticed by eg. anarcat and Simon Richter).  On a minimal system it may
>  survive but usually it starts killing daemons (including X), unmounting
>  stuff, choking and forcing an unclean reboot, etc.  This could be worked
>  around by:
>  • switching to sysvinit
>  • booting from a different media then chrooting to crossgrade (not for
>ordinary users unless it's eg. scripted from d-i)
>  • having a package bring a grub entry that boots with
>init=/usr/sbin/crossgrade to do the thing?

ACK. Booting in a *simple* state is likely to be key.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-13 Thread Steve McIntyre
Andrej Shadura wrote:
>On Thu, 13 Feb 2020, 10:40 YunQiang Su,  wrote:
>>
>> just redefine time_t to 64bit may also cause a problem:
>>a bad designed and old network protocol which aims  only target 32bit
>> system,
>>a binary data packet, may contain time_t:
>> struct {
>> int a;
>> time_t b;
>> }
>> just define time_t to 64 will break this protocol, although it is bad
>> designed.
>
>Aren't such things already broken on amd64?

Of course they are, yes. We may have cases where nobody has tested
interop between 32 and 64 bit machines, though. :-/

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-13 Thread Steve McIntyre
YunQiang Su wrote:
>Ansgar  于2020年2月13日周四 下午5:29写道:
>>
>> For arm* and mips*, we mostly seem to be talking about special-purpose
>> systems where just switching to a new architecture/port doesn't seem to
>> be that much as a problem as for i386.  I think rebuilding the world and
>> breaking ABI might thus be acceptable there.
>>
>> i386 seems different.  I think option C above would be the only
>> realistic proposal so far to fix the time_t problem for (parts of) i386,
>> but if glibc upstream doesn't want to expose two interfaces then i386
>> will probably just break.
>>
>
>just redefine time_t to 64bit may also cause a problem:
>   a bad designed and old network protocol which aims  only target 32bit 
> system,
>   a binary data packet, may contain time_t:
>struct {
>int a;
>time_t b;
>}
>just define time_t to 64 will break this protocol, although it is bad designed.

Oh, sure. We'll find bugs like this, guaranteed.

>Currently, the major task of 32bit ports is to keep compatible with
>old system/binary.
>Should we really want to break them?

Well, that's the question. AIUI people seem to be wanting to keep i386
as-is, due to the existing ecosystem of binaries (both free and
proprietary), and I've not seen anybody really saying that i386 needs
to live beyond 2038.

armhf is different, and we want to fix it (/replace it with
armhf_) with a 64-bit clean ABI. Where do the other existing
32-bit ports sit?

 * armel? anybody want to chime in?
 * mipsel?

I'd like to start making decisions *soon* on what we want to do, so we
can start work. I'm *hoping* that we might be able to get a new armhf
port done and released with bullseye, but that's clearly up to the
release team to make a call on. The longer we leave things, the harder
that target will be.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-13 Thread Steve McIntyre
Florian Weimer wrote:
>* Steve McIntyre:
>
>>>In addition if we are using a new multiarch triplet, and need to
>>>rebuild the world, are going to be ABI incompatible anyway, we might
>>>as well use a proper multiarch-qualified ld.so pathname that does
>>>not collide with anything.
>>
>> Hmmm. Moving ld.so is *hard* - we were already bitten by stuff here
>> when we bootstrapped armhf initially. What we didn't know then (but
>> know now!) is that the final element of the path (i.e. the filename)
>> must be globally unique for glibc's code to work. We can't (for
>> example) just move ld-linux-armhf.so.3 to a new directory, we'd have
>> to rename the file itself. (Apologies if this is stuff you already
>> know - I think it's worth explaining for others too!)
>
>These changes also require updates to the ABI manual and upstream
>patches to the toolchain.

Nod. (and "yay" - been there, done that before...)

>I don't think Debian's multi-arch path changes have been properly
>upstreamed yet, either.  Of course it does not help that key parts of
>the GNU toolchain are more or less dead upstream; the lack of an
>autoconf release is a real problem.

ACK. :-(

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
Hey Simon,

Simon McVittie wrote:
>On Tue, 04 Feb 2020 at 13:14:10 +0000, Steve McIntyre wrote:
>> Arnd scanned the library packages in the Debian archive and identified
>> that about one third of our library packages would need rebuilding
>> (and tracking) to make a (recursive) transition.
>
>Is a list of affected/unaffected packages available? (I know they'll
>be long lists.) Depending on how high up the stack they are, the right
>approach might change.

I don't have the list, I'm afraid. Arnd?

>Thinking about i386 specifically, since the tradeoffs for that architecture
>are likely to be a little different due to the prevalence of proprietary
>binaries, the use-cases I am aware of are:
>
>- Old hardware that doesn't implement amd64.
>  Breaking ABI would help here, but equally, this use-case seems likely
>  to go away "naturally" in the next 10? years (and for example Ubuntu is
>  already relegating i386 to a second-class-citizen status as a multiarch
>  library stack on amd64 systems, with no kernel or full bootable OS).
>
>- amd64-capable machines that have inherited a legacy i386 installation
>  because their owner doesn't want to reinstall or sidegrade to amd64.
>  Breaking the i386 ABI seems like it would be counterproductive here:
>  they'll still need to reinstall or sidegrade, and sidegrading from
>  i386 to i386t would probably be very crash-prone, since those will
>  presumably both have to be represented by ELF32 x86 binaries?
>
>- 32-bit Wine (to run 32-bit Windows programs).
>  On the Unix side, breaking ABI would maybe help. On the Windows side,
>  Wine needs to match whatever Microsoft does to solve this problem
>  (apparently time_t already defaults to 64-bit on Windows, but older
>  binaries will presumably use 32-bit time_t forever).

Hmmm. I didn't think Microsoft used *time_t* as such, but had their
own 64-bit format based on an epoch in ~1600?

>- Running old proprietary or otherwise sourceless binaries (e.g. games).
>  Breaking ABI is counterproductive: we can't recompile the games anyway.
>  Some solutions for running these (e.g. the Steam Runtime used by Steam)
>  rely on host libraries being approximately ABI-compatible with the ones
>  the binaries were compiled against, because they need to fetch graphics
>  drivers and their dependencies from the host system, otherwise they
>  could not work on recent GPUs (although by 2038, with faster CPUs, we'll
>  hopefully be able to run 2010s games at acceptable performance with
>  software rendering like llvmpipe, which would sidestep this issue).
>  (See the slides/video from my recent FOSDEM talk for more details)

ACK. I'm in agreement here. I also personally don't see the same
benefit to doing a 64-bit time_t transition for i386, using any of the
models we've suggested. It's a legacy ABI that we should explicitly
warn people will break. Have the Steam folks considered this issue at
all yet, OOC?

armhf is a different kettle of fish, without the same set of legacy
binaries. There are *many* legacy proprietary binaries for the
architecture, but the only ones that really matter are on other
platforms (Android or iOS) and really not our problem here. :-)

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
[ Skimming through this - Arnd already responded ... ]

Guillem Jover wrote:
>On Tue, 2020-02-04 at 13:14:10 +0000, Steve McIntyre wrote:

...

>> So, we're all fine? Not so much: for our 32-bit Debian arches, we will
>> need to basically rebuild the world to be 2038-safe. When we had to do
>> something like this in the past, to deal with the libc5->libc6
>> transition, we had an SONAME change in libc to work with. We decided
>> to append the "g" tag to the names of our library binary packages to
>> signal that a library was built against libc6. We can still see some
>> of the effects of this in the archive, many years later
>> (e.g. zlib1g). The problem now is that we will *not* have an soname
>> change here to help identify code compatibility on the 32-bit front.
>
>Well, I guess such a new (conditinally selectable) name could be
>coordinated with glibc upstream? Say bump 32-bit ports to use libc6.1?
>(We already have precedent in some ports that do not use the same
>prevalent SONAME, such as libc6.1, libc0.1 and libc0.1.) But it would
>indeed involve lots of work, with massive amounts of package renames. :/

Nod. :-(

>>* users would *not* be able to simply upgrade from one to the
>>  other, due to lack of binary compatibility
>
>I think this conclusion stems from an incorrect premise. See below.
>
>>We'd need to decide exactly which of our 32-bit ports we would want
>>to do this path with (probably armhf->arhmft?, maybe
>>armel->armelt?, i386->i386t?. mipsel???). Due to the libc6 soname
>>continuity, we will most likely *not* end up with a different
>>visible ABI via the triplet and the runtime linker, so old/new
>>multi-arch will be impossible.
>
>A new dpkg architecture must use a different triplet, as these are
>required to be bijective. See “lpia” for a previous example of this.
>(This would then make it possible to cross-grade.)

ACK, that's feasible of course. It's not a *simple* upgrade, though.

>In addition if we are using a new multiarch triplet, and need to
>rebuild the world, are going to be ABI incompatible anyway, we might
>as well use a proper multiarch-qualified ld.so pathname that does
>not collide with anything.

Hmmm. Moving ld.so is *hard* - we were already bitten by stuff here
when we bootstrapped armhf initially. What we didn't know then (but
know now!) is that the final element of the path (i.e. the filename)
must be globally unique for glibc's code to work. We can't (for
example) just move ld-linux-armhf.so.3 to a new directory, we'd have
to rename the file itself. (Apologies if this is stuff you already
know - I think it's worth explaining for others too!)

>I also think we have a C option, which would be something like:
>
>  C Do a transition equivalent to the LFS one, by either switching
>libraries opportunistically to 64-bit time_t on their next SONAME
>bumps, or by updating them to provide 64-bit variants of their
>interfaces along their 32-bit ones, as done in glibc. Of course
>the main problem here is that the LFS "transition" is not one we
>should be very proud of, as it's been dragging on for a very long
>time, and it's not even close to be finished…
>
>
> <https://lintian.debian.org/tags/binary-file-built-without-LFS-support.html>
>(Hmm there seems to be something borked with lintian.d.o, as the
>general tag numbers seem extremely low. :)

I don't think this helps very much though - it's the embedded copies
of "time_t" all the way up the library stack that will break...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
Florian Weimer wrote:
>* Steve McIntyre:
>
>> The kernel is *basically* fixed now. Internally, data structures
>> should now be safe. There are a small number places where 32-bit time
>> is still a thing, but it's in hand. A number of syscalls, ioctls,
>> etc. have needed updates for the user-kernel interface level.
>
>XFS is the elephant in the room, though.

Oh, sure. There are a few other places that will break too, I'm sure.

>> glibc is the place that needs to care about most of this.
>
>I'm not so sure.  I really do not want glibc to parse and rewrite
>ioctl arguments and return values, or ancillary socket data.

Sorry - to be clear, I'm talking about in terms of the definitions of
various structures and library routines that are used further up the
stack. If we set our new 64-bit glibc to *always* expose 64-bit time_t
and use the right 64-bit syscalls here, then the vast majority of the
libraries and applications above it will just inherit the right
answers by default.

There will (of course!) be some other packages that will need work -
we'll need to look for those too but they're much smaller targets.

>> The glibc folks have taken an interesting approach.
>>
>>  * 64-bit ABIs/architectures are already using 64-bit time_t
>>throughout. The design is sane and so we should already be mostly
>>safe here, modulo silly code bugs (we'll always have those!)
>
>With the exception of utmp/utmpx, see __WORDSIZE_TIME64_COMPAT32 in
>the headers.  Unfortuantely, this also affects on-disk data
>structures.

ACK. :-(

>>  * 32-bit ABIs/arches are more awkward. glibc will continue *by
>>default* to use 32-bit time_t to keep compatibility with existing
>>code. This will *not* be safe as we approach 2038.
>>
>>  * 32-bit ABIs/arches *can* be told to use 64-bit time_t from glibc
>>upwards, but this will of course affect the ABI. Embedded uses of
>>time_t in libraries will change size, etc. This *will* be safe for
>>2038.
>>
>> So, we're all fine? Not so much: for our 32-bit Debian arches, we will
>> need to basically rebuild the world to be 2038-safe.
>
>The question is whether anyone wants an i386 port where this has
>happened.
>
>My opinion (professional in this case, even) is that i386 users want
>compatibility with their binaries from 1998.  Otherwise they would
>have rebuilt them for x86-64 by now.  Under this worldview, i386 is
>for backwards compatibility with existing software.  Users will want
>to run these old programs in a time namespace with shifted time, too.

Agreed!

>There is also substantial commercial interest in those old binaries
>(which becomes apparent when you break glibc compatibility with them
>8-/).
>
>>  B Decide which 32-bit ports we expect to care about by 2038, and
>>re-bootstrap new versions of those ports *with different
>>names*. This would allow most of our developers to ignore the
>>problem here (as 64-bit arches are not affected) and let a smaller
>>number of people re-bootstrap with new ABIs with 64-bit time_t
>>embedded. There are some downsides here:
>>
>>* we would end up with two versions of some ports for a short time
>>  - probably one release of overlap
>>
>>* users would *not* be able to simply upgrade from one to the
>>  other, due to lack of binary compatibility
>>
>>We *would* be able to run old and new ABIs on top of the same (new
>>enough) kernel (e.g. for buildds), so a lump of this would just be
>>simply building the new world and filing bugs where needed.
>>
>>We'd need to decide exactly which of our 32-bit ports we would want
>>to do this path with (probably armhf->arhmft?, maybe
>>armel->armelt?, i386->i386t?. mipsel???). Due to the libc6 soname
>>continuity, we will most likely *not* end up with a different
>>visible ABI via the triplet and the runtime linker, so old/new
>>multi-arch will be impossible.
>
>Yes, it really has to be B for i386 at least.
>
>The other issue is that the Y2038 work has tentacles everywhere.
>Porting to new architectures (whether they are 32-bit or 64-bit) will
>require additional changes to those applications which make direct
>system calls, in some cases even if they do not even use time_t or
>struct timespec with those system calls at all.  For example, new
>ports will not define __NR_futex, only __NR_futex_time64.

Nod.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
Simon McVittie wrote:
>On Fri, 07 Feb 2020 at 09:28:24 +0200, Wouter Verhelst wrote:
>> Why not? This seems like the type of problem that SONAMEs are made for.
>> What am I missing?
>
>SONAMEs are set by the upstream developer in their build system (building
>the same source code produces the same SONAME), and are cross-distro
>comparable/compatible. This makes them good for representing ABI breaks
>that result from changes to the upstream source code (like deleting
>a deprecated function or changing a struct's members), but bad for
>representing ABI breaks that result from external factors like a toolchain
>or compilation-option change.
>
>We didn't/couldn't change SONAMEs for the C++11 std::string transition
>(g++ 5, "v5" suffix), which was a similar situation.

Nod, exactly. This involves tracking all the way up the library stack,
which makes it hard.

We *can* go the suffix route if preferred, but that's a *lot* of
effort - see proposal A...

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
Sam Hartman wrote:
>Steve, you're presuming that we would not create a new soname for libc6
>on architectures where we want a new time ABI.
>
>That's not at all obvious to me.
>It seems in the same level of drastic as the other options you are
>considering.
>So taking it off the table without discussion or consideration doesn't
>seem like a good call.

As Arnd has mentioned, it seems the (upstream) glibc maintainers are
not keen to change soname. The last thing we want is to diverge from
them (and hence other distros), so it's a discussion we would need to
have.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
wzss...@gmail.com wrote:
>Steve McIntyre  于2020年2月4日周二 下午9:15写道:

...

>>  A Follow a similar path to last time (rename library packages). This
>>will allow us to do partial upgrades, but the cost is that a vast
>>number of packages will need work to make this happen,
>>*potentially* building library packages twice to allow us to
>>continue both 32-bit and 64-bit time_t support forwards for a
>>while. This effort will be *needed* only for the sake of our 32-bit
>>ports, but would affect *everybody*.
>>
>>  *** OR ***
>>
>>  B Decide which 32-bit ports we expect to care about by 2038, and
>>re-bootstrap new versions of those ports *with different
>>names*. This would allow most of our developers to ignore the
>>problem here (as 64-bit arches are not affected) and let a smaller
>>number of people re-bootstrap with new ABIs with 64-bit time_t
>>embedded. There are some downsides here:

...

>> So, which way should we go? My own personal gut feel matches Arnd's,
>> which would be route B. Some of us already have fair experience with
>> bootstrapping new arches, and we could almost just crank the handle
>> for most of this work.
>
>Is there the option C?
>
>Draft:
>  1. define time64_t
>  2. for data_struct which act as a part of ABI, define a new data_struct64
>  3. for function which act as part of ABI, define a new version func64.
>  4. patch all packages to use time64_t instead of time_t step by step.
>  5. set a time as deadline (2030?), and then treat all packages
>haven't finished
>  the migration as rc-buggy.
>
> Since we have enough time, we can patch all packages in that period.

It's possible, but...

The problem here is that we have many thousands of packages to work
on, glibc up through other libs to all the applications that use
them. It's invasive work, and likely to take a very long time. Since
it's work that would *not* be needed for 64-bit architectures, we're
also likely to see push-back from some upstreams.

2030 is also too late to fix the problem - people are already starting
to see issues in some applications. We want to make a difference soon:
the earlier that we have fixes available, the fewer broken systems
will have to be fixed / removed / replaced later.

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
Steve McIntyre wrote:
>Russ Allbery wrote:
>>
>>If we go down this path, can we make cross-grading a supported feature for
>>the next stable release?  I'm sure I'm not the only one who is stuck with
>>continuously-upgraded i386 hosts who has been wanting to switch but has
>>been waiting until cross-grading is a little bit less scary.
>
>ACK - I've heard quite a few people asking for this over the last few
>years. I've personally cross-graded a couple of systems (and my home
>server has moved twice, i386->amd64->arm64), but it's not for the
>faint-hearted.
>
>/me ponders - this could be a fun task for a GSoC/outreachy student to
>hack on, maybe?

https://wiki.debian.org/SummerOfCode2020/UnApprovedProjects/ArchitectureCrossGrade

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



Re: Y2038 - best way forward in Debian?

2020-02-12 Thread Steve McIntyre
Russ Allbery wrote:
>Ansgar  writes:
>
>> So maybe just recommend people to move to 64-bit architectures and put
>> 32-bit applications in a time namespace so they believe they are still
>> in 2001 ;-) 32-bit architectures will probably still be useful in
>> embedded contexts for a long time and there it might be easier to just
>> change the ABI, but for a general-purpose distribution we start seeing
>> more and more problems and I don't really see us supporting them as a
>> full architecture in 10+ years.
>
>If we go down this path, can we make cross-grading a supported feature for
>the next stable release?  I'm sure I'm not the only one who is stuck with
>continuously-upgraded i386 hosts who has been wanting to switch but has
>been waiting until cross-grading is a little bit less scary.

ACK - I've heard quite a few people asking for this over the last few
years. I've personally cross-graded a couple of systems (and my home
server has moved twice, i386->amd64->arm64), but it's not for the
faint-hearted.

/me ponders - this could be a fun task for a GSoC/outreachy student to
hack on, maybe?

-- 
Steve McIntyre, Cambridge, UK.st...@einval.com
  Armed with "Valor": "Centurion" represents quality of Discipline,
  Honor, Integrity and Loyalty. Now you don't have to be a Caesar to
  concord the digital world while feeling safe and proud.



  1   2   3   4   5   6   >