Matthew Garrett Profile picture
Nov 7 4 tweets 1 min read
I suspect that the number of Bazel experts out there is not terribly large, but: I'm hitting github.com/bazelbuild/rul… - one of the dependencies of a go_library() target needs a specific build tag to work in my environment. Is there any way to do that at the moment?
Ok so the right thing to do here is to express the tags in the go_binary() target, but what's actually breaking things for me here is that go_repository() has "helpfully" called gazelle and generated a BUILD file that has copts set for the default tags
Which means even when I pass the correct build tags, gcc is being called with the flags set by the wrong build tags, and all the #ifdefs are wrong as a result
Ah ok the fix is to add build_tags = ["foo","bar"] to the go_repository() definition in the workspace config

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Matthew Garrett

Matthew Garrett Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @mjg59

Jun 29
It's been almost 15 years and a recent thread on LWN brought this up again so: why did we briefly have two drivers for R500 and R600 ATI chipsets under Linux (a thread)
ATI had supported development of Linux drivers for their chipsets up until the R300, and R400 was similar enough that stuff got bodged together. R500 had an entirely new display engine and so no existing code worked. Fuuuuuuuuuuu.
After a bunch of time Jerome Glisse reverse engineered enough to get modesetting working, giving us the xf86-video-avivo driver. This was made possible by the Xorg modularisation effort (previously, drivers were tied to the X11 server release schedule)
Read 19 tweets
Jun 17
Ok so changing the IMEI on basically any Qualcomm device is just a matter of modifying index 550 in the NVRam? Fantastic
Oh hey ModemManager already has code to write to Qualcomm NV over the diagnostic protocol this makes everything much easier
Wow uh this would probably be a very small number of lines of code
Read 4 tweets
May 30
Well, ok, let's start the Digital Fortress readthrough. Screenshot of text reading:  Susan sat up. Emergency? She ha
This is some Quillette level shit tbh Screenshot of text reading:  He noticed that her strong haze
Ah yes the "Kanji language" Screenshot of text reading:  For two hours, Becker interpret
Read 77 tweets
Apr 16
Fascinating - ClearOS, the OS used on the scammy MAGA "Freedom Phone", ships a modified version of Signal that seems to be based on Signal 5.8.10, which means it's almost exactly a year out of date: clearos.app/app/com.clearo…
I haven't been able to find the source code anywhere, so I'm working off decompiled binaries - most of the changes just seem to be branding pointing to their app store instead of the Play Store, but there's a bunch additional support for backing things up to their servers
It does seem to be using the standard Signal servers so presumably interoperates, which I suspect @signalapp might have feelings about
Read 15 tweets
Jan 24
Thanks to a great suggestion from @dlprip, I think it's actually possible to transition Boot Guard protected systems to being able to run Coreboot while still providing strong security guarantees (note: this would still require the cooperation of the system vendor)
The @FrameworkPuter people had suggested some sort of signed shim that would satisfy Boot Guard and would then jump into user-provided firmware. Good for freedom, but what about people who want stronger guarantees that their firmware hasn't been tampered with?
In the UEFI boot shim, we use an approach @openSUSE came up with - any user-provided keys are stored in variables that can only be modified by the boot environment, which means the code running in the boot environment can trust them
Read 10 tweets
Jan 23
Fun example of how selection pressure doesn't work the way you think! This is a male Long-tailed Widowbird. As you can see, it has a long tail. (Picture by Bernard DUPONT, CC-SA 2.0) A small, mostly black bird sitting on a barbed-wire fence. I
The long tails are unique to the males, and seem to make life more difficult for them. The longer the tail, the more visible the bird, and the harder it is to fly. Longer tails mean a higher probability of predation. So why haven't they been selected against?
Malte Andersson led an experiment that involved cutting the tails off some males and gluing them to the ends of others. The males with the unnaturally long tails had more reproductive success than both the males with the artificially shortened tails and the unmodified controls.
Read 8 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(