@alcinnz@floss.social
@alcinnz@floss.social avatar

alcinnz

@alcinnz@floss.social

A browser developer posting mostly about how free software projects work, and occasionally about climate change.

Though I do enjoy german board games given an opponent.

Pronouns: he/him

This profile is from a federated server and may be incomplete. Browse more on the original instance.

alcinnz, to random
@alcinnz@floss.social avatar

Fixing a hardware bug in software (65C51 UART) - Ben Eater: https://invidious.snopyta.org/watch?v=CnA8nG3zYHw (YouTube via Invidious)

alcinnz, to random
@alcinnz@floss.social avatar

Why is GitHub Actions installing Go 1.2 when I specify Go 1.20? - Xe: https://xeiaso.net/blog/go-1.20-yaml

alcinnz, to random
@alcinnz@floss.social avatar

Digital simplicity - Manuel Moreale: https://manuelmoreale.com/digital-simplicity

Reconsidering his social media approach.

devinprater, to random

Oh my goodness y'all tomorrow is my birthday and everything is moving way too fast.

alcinnz,
@alcinnz@floss.social avatar

@devinprater Enjoy your birthday!

alcinnz, to random
@alcinnz@floss.social avatar

It's been calculated that individual climate action can sum to 25-27% of the needed carbon reductions. Sure this is nowhere near enough, but it is significant!

So I'd please like to stop seeing posts which implies that individual vs collective action is an either/or. We need both!

https://takethejump.org/
(There'll be a kiwi-localized link soon, followed by other countries)

alcinnz,
@alcinnz@floss.social avatar

@dimi Yeah, the focuse on use is an issue. And in my environmental group there's concern about the wording around "keep products for 7 years" on that site because that number was calculated for electronics, & assumes you're not getting another one in the meantime.

Good to keep other items as long as you can too, but electronics makes the most difference!

alcinnz,
@alcinnz@floss.social avatar

@dimi And agreed: Figuring out what advice to give is difficult.

That "Take The Jump" site makes a solid effort, & having localized sister sites should help give better advice. Because like for your example of electric cars, whether that's advisable depends in part on where you live & how good your transport infrastructure is!

alcinnz,
@alcinnz@floss.social avatar

@dimi I'll take it under advisement!

alcinnz,
@alcinnz@floss.social avatar

@dimi I'm sure you'd know better than me, but my understanding is that electric cars are more of an improvement for urban. Not that they were bad for rural.

Also that it does take a fair amount of energy either, but especially electric.

alcinnz,
@alcinnz@floss.social avatar

@dimi 1. Aggregating the fuel burning into electricity improves efficiency even if it is still fossil fuels.

  1. In New Zealand, our electricity grid is near-entirely renewable. Mostly hydro.

  2. Personally I don't advocate any type of car. I prefer electric scooters, walking, bus, bikes, etc. Though yes, this is me being an urbanite.

alcinnz,
@alcinnz@floss.social avatar

@dimi 4. I'm sure there's more nuances to keep in mind, but I'll leave that to engineers to discuss.

alcinnz,
@alcinnz@floss.social avatar

@silmathoron I linked the site. It's got a science page.

alcinnz, to random
@alcinnz@floss.social avatar

Studying Shadow's commandline tools...

After initializing LibShadow, internationalization, & auditting lastlog parses/validates commandline flags ensuring no args remain, opens /var/log/lastlog retrieving its filesize, either updates or prints to it, & closes it. Updating involves between validation & flushing querying password entries to update. For each relevant entry it seeks to that offset in the lastlog & writes a binary structure with audit logging. Printing gathers more info.

1/?

alcinnz,
@alcinnz@floss.social avatar

After initializing LibShadow, internationalization, & logging grpconv parses a couple (-R handled specially) commandline flags, opens the group & shadow group files under lock iterates over the shadow group file removing groups not in the group file, iterates the groups file to move over passwords, & cleans up.

After init'ing LibShadow, internationalization, & logging pwck parses a few commandline flags (handling -R specially), opens the password & shadow password files under lock, ...

2/?

alcinnz,
@alcinnz@floss.social avatar

... either validation or sorts the files, & cleans up with error messages & exit codes. The validation involves iterating over each entry skipping NIS lines, & prompting what to do about any syntax errors, duplications, etc it finds depending on their severity. This is implemented seperately for the shadow file.

After init'ing LibShadow, santization, i18n, & logging chfn parses commandline flags (handling -R specially), retrieves name password entry or the user's own, ...

3/?

alcinnz,
@alcinnz@floss.social avatar

... validates it's not a NIS account & the users' permissions, copies over old fields, prompts for new fields they're permitted to change if none of those values are given in the commandline flags, validates the new fields (I don't like the ASCII restriction I see...), writes this data to the end of the GECOS file & to the appropriate location in the password file, syslogs, & cleans up.

After initializing auditting, internationalization, LibShadow, logging, & the envvars, newgrp ...

4/?

alcinnz,
@alcinnz@floss.social avatar

newgrp retrieves the user's password entry, manually parses a - or -l flag, manually parses -c or retrieves the group entry, retrieves the grouplist repeatedly reallocating it's memory & reporting errors, retrieves the specified group by name with error reporting, possibly checks whether we're a member of that group & if not rereads the group, retrieves shadow group, checks permissions, considers syslogging, calls setgroups if available, closes files it's querying, ...

5/?

alcinnz,
@alcinnz@floss.social avatar

... sets the process's group & user IDs, runs the given subcommand if any, otherwise retrieves $SHELL envvar, possibly home directory & certain envvars, audit-logs, runs that shell, & reports any failures.

After initializing LibShadow, internationalization, & logging whilst sanitizing the envvars chage retrieves the process's user/group IDs validating permissions whilst parsing/validating commandline flags ensuring a single arg remains, validates the shadow-password file exits, ...

6/?

alcinnz,
@alcinnz@floss.social avatar

... opens password & shadow files under lock, drops privileges, finds password & shadow (& possibly TCB) entry for given account, considers outputting expiration times if requested & permitted, prompts for new values if not given in flags, audit logs which fields will change, updates the shadow password entry, cleans up & syslogs.

After initializing LIbShadow, internationalization, & logging whilst parsing commandling flags (handling -R special) newusers ...

7/8!

alcinnz,
@alcinnz@floss.social avatar

newusers checks privs & that the shadow files are present, opens all the accounts files, repeatedly reads lines from stdin, reports any errors, cleans up, & copies info over to PAM if supported. For each stdin line once validated newusers splits it into 7 fields, locates the password entry, validates a bit more, writes out the parsed group then user if valid, locates the password entry, generates & writes the hashed password, outputs password entry, & outputs/allocates subordinate IDs.

8/8!

alcinnz, to random
@alcinnz@floss.social avatar

Why display: contents is not CSS Grid Layout subgrid - Rachel Andrew: https://rachelandrew.co.uk/archives/2017/07/20/why-display-contents-is-not-css-grid-layout-subgrid/

A Complete Guide to calc() in CSS - Chris Coyier @ CSS-Tricks: https://css-tricks.com/a-complete-guide-to-calc-in-css/

The Beginner’s Guide to CSS Shorthand - Anna Fitzgerald @ HubSpot: https://blog.hubspot.com/website/css-shorthand

HTML Table - Programiz: https://www.programiz.com/html/table

alcinnz,
@alcinnz@floss.social avatar

Last few links from my blogpost there...

When And How To Use CSS Multi-Column Layout - Rachel Andrew @ Smashing: https://www.smashingmagazine.com/2019/01/css-multiple-column-layout-multicol/

Understanding Masonry Layout - Rakhitha Nimesh: https://www.sitepoint.com/understanding-masonry-layout/ (I'll have to write my own explaining these to non-Haskellers...)

Control.Parallel - parallel hackage: https://hackage.haskell.org/package/parallel-3.2.2.0/docs/Control-Parallel.html

rysiek, (edited ) to random
@rysiek@mstdn.social avatar

This is your irregular reminder are fucking dicks:
https://www.vice.com/en/article/a3xk3p/adobe-tells-users-they-can-get-sued-for-using-old-versions-of-photoshop

> Adobe Tells Users They Can Get Sued for Using Old Versions of Photoshop

We need tools to get to the point where they can replace Adobe tools. Open alternatives are great, but they are sadly not there yet to replace Adobe tools for professionals.

And won't be unless projects like @inkscape get enough funding to develop to a point of being viable alternatives.

Yes, it is in no small part about the money.

alcinnz,
@alcinnz@floss.social avatar

@doctormo @jlapoutre @rysiek @inkscape Just the other day I remarked on a disconnect where FOSS-adjacent folks who don't trust opensource UX to have improved, & FOSS folks who don't trust them to be judging based on our current state.

I don't know what to take from this dynamic beyond meaningless noise to disprove...

alcinnz,
@alcinnz@floss.social avatar

@villewilson @rysiek @Blender What if you're at a studio who has built extensive tooling around Maya because Blender didn't exist when they started? I've heard that story before.

Not that Weta's actually using Maya anymore, but it's a load-bearing abstraction for them. And I would agree that Blender's better built for that purpose!

alcinnz,
@alcinnz@floss.social avatar

@villewilson @Blender @rysiek Agreed, major (and relatively old) effects studios like Weta are exceptional cases.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • provamag3
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • JUstTest
  • All magazines