I work on an m1 macbook and a lot of times using arm architecture breaks dependencies. I have two really basic functions in my .zshrc (should also work for bash):
# M1 compatibility switches
arm() { arch -arm64 "${@:-$SHELL}" }
x86() { arch -x86_64 "${@:-$SHELL}" }
This with the addition of `$(uname -m)` in my $PROMPT, has saved me a lot of time by letting me switch between arm and x86_64 architecture.
Does anyone have something similar to this for exec'ing into kubernetes pods? It's usually not the case that the container will have bash, vim, etc., but there is probably something to make it feel more like home.
You probably don't want either a fully functioning remote shell, or a malleable filesystem for injecting one, since that's precisely the kind of environment that is great for infiltrators to make a pod do something it's not intended to.
if you have a common base system it might be possible to copy/rsync/untar the tools you need and then use them. Ideally you'd want to restart the container/pod once you're done to ensure the tools aren't left around, or their presence causes other weird issues.
What happens if the machine loses power on a hot summer day? Seems like either the dog would be incinerated or the door unlocks in a failure mode. Either scenario sounds like a nightmare.
My name is also Ian and I have invented my own shoe-tying method independently from Ian Fleggen's method. I believe it's faster than the "Ian Knot". Once I come up with a name for it, I will publish it online.
Along the same tone, httprouter doesn't allow defining these routes simultaneously
users/:id
users/watching
Was kind of surprised as we have many routes like that. Like gorilla/mux, I think it was just first (trie-based mux). Isn't gin based on httprouter?
There are even better muxes now. `pressly/chi` is used by heavy hitters in production and takes advantage of Go 1.7 HTTP context. `labstack/echo` is another highly recommended by others but I don't like the non-idiomatic echo.Context in handler signatures.
Back on topic, I hope the go web examples only imports built-in packages. The gorilla/mux example could easily be written to use built-in packages.
I avoid httprouter because it doesn't adhere to the standard library interface for http handlers. I've not used gin, but it looks to also not follow the standard library interface here. Also, it does not appear to make use of newer developments in Go such as the context package (it imports the x/pkg version but does nothing with it I think).
I believe gorilla mux came out years before the others, so it's not really shocking that it is used more. I personally have never had any issues with it but to each there own.
# M1 compatibility switches
arm() { arch -arm64 "${@:-$SHELL}" }
x86() { arch -x86_64 "${@:-$SHELL}" }
This with the addition of `$(uname -m)` in my $PROMPT, has saved me a lot of time by letting me switch between arm and x86_64 architecture.