730 stories
·
0 followers

Today on the shadow docket: assisting Trump’s arbitrary deportations to slave prisons

1 Comment and 2 Shares

Today’s 5-4 order vacating a temporary restraining order preventing further deportations of accused members of Tren de Aragua under the Alien Enemies Act (ACB dissenting with the three liberals) follows a familiar pattern:

  • An ipse dixit in a brief, unsigned opinion that sounds facially reasonable because all of the relevant context has been stripped out.
  • An “are we the baddies?” concurrence from Kavanaugh making further unpersuasive attempts to minimize the Court’s pernicious action.
  • Unanswerable dissents that the Court mostly just ignores on the merits, while huffing about the “rhetoric” of the dissenting opinions.

While acknowledging that notice and due process are required before deportation, he Court vacates the order under the theory that the detainees can only seek relief under habeas corpus and not the APA, which means that cases have to be brought in the jurisdiction where the detainees were being held (in this case Texas.) As Sotomayor observes, this requirement allows the administration to venue shop for the jurisdictions most hostile to the rights of the detainees, and as Sotomayor says the desire for venue shopping is certainly not adequate justification for an emergency intervention.

I recommend reading Sotomayor’s dissent in full, but I think this is the heart of it:

What if the Government later determines that it sent one of these detainees to CECOT in error? Or a court eventually decides that the President lacked authority under the Alien Enemies Act to declare that Tren de Aragua is perpetrating or attempting an “invasion” against the territory of the United States? The Government takes the position that, even when it makes a mistake, it cannot retrieve individuals from the Salvadoran prisons to which it has sent them. The implication of the Government’s position is that not only noncitizens but also United States citizens could be taken off the streets, forced onto planes, and confined to foreign prisons with no opportunity for redress if judicial review is denied unlawfully before removal. History is no stranger to such lawless regimes, but this Nation’s system of laws is designed to prevent, not enable, their rise.

[…]

That requirement may have life or death consequences. Individuals who are unable to secure counsel, or who cannot timely appeal an adverse judgment rendered by a habeas court, face the prospect of removal directly into the perilous conditions of El Salvador’s CECOT, where detainees suffer egregious human rights abuses. Anyone the Government mistakenly deports in its piecemeal and rushed implementation of the challenged Proclamation will face the same grave risks.

The stakes are all the more obvious in light of the Government’s insistence that, once it sends someone to CECOT, it cannot be made to retrieve them. The Government is at this very moment seeking emergency relief from an order requiring it to facilitate the return of an individual the Government concededly removed to CECOT “because of an administrative error.”

The Government’s resistance to facilitating the return of individuals erroneously removed to CECOT only amplifies the specter that, even if this Court someday declares the President’s Proclamation unlawful, scores of individual lives may be irretrievably lost. More fundamentally, this Court exercises its equitable discretion to intervene without accounting for the Government noncompliance that has permeated this litigation to date.

[….]

The Government’s conduct in this litigation poses an extraordinary threat to the rule of law. That a majority of this Court now rewards the Government for its behavior with discretionary equitable relief is indefensible. We, as a Nation and a court of law, should be better than this. I respectfully dissent.

It’s also critical to note that the AEA requires that we be at war with the relevant country, which we are not. It has only been in invoked during the War of 1812 and World Wars I and II.

Jackson has a shorter dissent noting that this is yet another abuse of the emergency docket:

The President of the United States has invoked a centuries-old wartime statute to whisk people away to a notoriously brutal, foreign-run prison. For lovers of liberty, this should be quite concerning. Surely, the question whether such Government action is consistent with our Constitution and laws warrants considerable thought and attention from the Judiciary. That was why the District Court issued a temporary restraining order to prevent immediate harm to the targeted individuals while the court considered the lawfulness of the Government’s conduct. But this Court now sees fit to intervene, hastily dashing off a four-paragraph per curiam opinion discarding the District Court’s order based solely on a new legal pronouncement that, one might have thought, would require significant deliberation.

[…]

I lament that the Court appears to have embarked on a new era of procedural variability, and that it has done so in such a casual, inequitable, and, in my view, inappropriate manner. At least when the Court went off base in the past, it left a record so posterity could see how it went wrong. See, e.g., Korematsu v. United States, 323 U. S. 214 (1944). With more and more of our most significant rulings taking place in the shadows of our emergency docket, today’s Court leaves less and less of a trace. But make no mistake: We are just as wrong now as we have been in the past, with similarly devastating consequences. It just seems we are now less willing to face it.

It’s a very bad opinion, and what it portends is even worse.

The post Today on the shadow docket: assisting Trump’s arbitrary deportations to slave prisons appeared first on Lawyers, Guns & Money.

Read the whole story
· · · · ·
deebee
2 days ago
reply
For lovers of liberty, this should be quite concerning.
America City, America
Share this story
Delete

Blackwing's Overbuilt Pencil Sharpener Cuts a Curved Point

1 Comment

This amusingly overbuilt Long Point Pencil Sharpener is by California-based stationery company Blackwing.

Rather than sharpening your pencil point into a mere cone, it cuts a curved taper into it; this shape, the company claims, "resists breakage."

The sharpener is made of machined aluminum, and the blade is German steel.

Comes in three colors, and runs $22.




Read the whole story
· ·
deebee
6 days ago
reply
Cool?
America City, America
Share this story
Delete

Italdesign's Wild 1990s Minivan Concept

1 Comment

Back in 1992, Chris Columbus was either the guy who directed "Home Alone" or the guy who "discovered" America. And that year, Giorgetto Giugiaro's Italdesign released a wild concept vehicle called The Columbus (in memory of the latter CC).

The "ultra-high level status vehicle" was meant to celebrate the 500th anniversary of Christopher Columbus' voyage to America (before that came to be seen as problematic). The minivan's swoopy, nautical style lines say Nina, Pinta and Santa Maria more than they do Dodge Caravan.

"Mini" van might be the wrong term, though that's what Italdesign called it. The vehicle was actually 6 meters (19.7') long and seated up to nine people.

The driving position is elevated for better visibility, and the engine—a 5-liter BMW V-12—was beneath the driver's position. Startlingly for the time, the driver's seat was in the center of the vehicle. (The McLaren F1, which also adopted this arrangement, wasn't released until the following year.)

Unsurprisingly, the vehicle never saw production.




Read the whole story
deebee
14 days ago
reply
that car Homer Simpsons designed that ruined his brother's car company
America City, America
Share this story
Delete

LGM Film Club, Part 497: Fantastic Mr. Fox

1 Comment

I rewatched Wes Anderson’s 2009 film Fantastic Mr. Fox again and I have to say that it might be my very favorite of his films. Now, I get it if you don’t like Anderson. It’s an aesthetic alright and if it isn’t yours, you probably find him unbearable. As for the films being all the same, well, that’s not uncommon of many directors, so I don’t have a lot of patience for that argument. It’s just that you don’t like the films being all the same in this kind of way. Again, that’s OK. I admit that his whimsy and put-ons have varying degrees of effectiveness over a now pretty long career. But I do like it when Anderson turns to animation and his adaptation of Roald Dahl’s story is pretty great. For one, George Clooney is absolutely perfect as the fox. The combination of ridiculousness, arrogance, and male ego works very well and Clooney can really deliver that. Meryl Streep as Mrs. Fox is almost as good, though she’s asked to do less. Of course Jason Schwartzmann, Bill Murray, and Owen Wilson show up doing basically their normal thing in a different role. I am amused at Brian Cox as the reporter. Willem Dafoe as the rat is great too. And I happen to love the animation, though I confess to being no expert on the subject and having not nearly as much knowledge as anyone who cares about the topic in any more than a passing way. I’m surprised this didn’t make a ton of money, though it did generate a small profit at the time that has grown over the years. Anyway, it’s highly enjoyable. After all, we are all just wild animals.

The post LGM Film Club, Part 497: Fantastic Mr. Fox appeared first on Lawyers, Guns & Money.

Read the whole story
· · ·
deebee
28 days ago
reply
“I’ve long been on the record about Dahl adaptations AND fables with foxes…”
America City, America
Share this story
Delete

Volkswagen Previews Their €20,000 Electric Car

1 Comment

From the Beetle to the Rabbit to the Golf, Volkswagen has long made affordable, practical cars that those with smaller budgets can afford. Now they're aiming that prowess at the EV market with the unveiling of their ID EVERY1.

The concept car is intended to make the transition into production for €20,000 (USD $21,667) in 2027. Hailed as "affordable entry-level all-electric mobility" by Thomas Schäfer, CEO of Volkswagen Passenger Cars, the 94hp vehicle will reportedly have a range of 155 miles.

Aesthetically, the vehicle was designed to have a friendly, approachable look. "Our ambition was to create something bold yet accessible," says Andreas Mindt, Volkswagen's Head of Design. "The ID EVERY1 has a self-assured appearance but remains likeable – thanks to details such as the dynamic front lights and the 'smiling' rear. These design elements make it more than just a car: they give it character and an identity that people can relate to."

The big question for Americans is whether that €20,000 sticker will apply in 2027, given the way our current administration's tariff war is going. The point may be moot; sadly, VW has announced no plans to bring this affordable EV to the U.S. market. With any luck things will change in two years' time.




Read the whole story
· · ·
deebee
30 days ago
reply
Tech on the inside looks new maybe this is from the Rivian investment last year?
America City, America
Share this story
Delete

How to add a directory to your PATH

3 Shares

I was talking to a friend about how to add a directory to your PATH today. It’s something that feels “obvious” to me since I’ve been using the terminal for a long time, but when I searched for instructions for how to do it, I actually couldn’t find something that explained all of the steps – a lot of them just said “add this to ~/.bashrc”, but what if you’re not using bash? What if your bash config is actually in a different file? And how are you supposed to figure out which directory to add anyway?

So I wanted to try to write down some more complete directions and mention some of the gotchas I’ve run into over the years.

Here’s a table of contents:

step 1: what shell are you using?

If you’re not sure what shell you’re using, here’s a way to find out. Run this:

ps -p $$ -o pid,comm=
  • if you’re using bash, it’ll print out 97295 bash
  • if you’re using zsh, it’ll print out 97295 zsh
  • if you’re using fish, it’ll print out an error like “In fish, please use $fish_pid” ($$ isn’t valid syntax in fish, but in any case the error message tells you that you’re using fish, which you probably already knew)

Also bash is the default on Linux and zsh is the default on Mac OS (as of 2024). I’ll only cover bash, zsh, and fish in these directions.

step 2: find your shell’s config file

  • in zsh, it’s probably ~/.zshrc
  • in bash, it might be ~/.bashrc, but it’s complicated, see the note in the next section
  • in fish, it’s probably ~/.config/fish/config.fish (you can run echo $__fish_config_dir if you want to be 100% sure)

a note on bash’s config file

Bash has three possible config files: ~/.bashrc, ~/.bash_profile, and ~/.profile.

If you’re not sure which one your system is set up to use, I’d recommend testing this way:

  1. add echo hi there to your ~/.bashrc
  2. Restart your terminal
  3. If you see “hi there”, that means ~/.bashrc is being used! Hooray!
  4. Otherwise remove it and try the same thing with ~/.bash_profile
  5. You can also try ~/.profile if the first two options don’t work.

(there are a lot of elaborate flow charts out there that explain how bash decides which config file to use but IMO it’s not worth it to internalize them and just testing is the fastest way to be sure)

step 3: figure out which directory to add

Let’s say that you’re trying to install and run a program called http-server and it doesn’t work, like this:

$ npm install -g http-server
$ http-server
bash: http-server: command not found

How do you find what directory http-server is in? Honestly in general this is not that easy – often the answer is something like “it depends on how npm is configured”. A few ideas:

  • Often when setting up a new installer (like cargo, npm, homebrew, etc), when you first set it up it’ll print out some directions about how to update your PATH. So if you’re paying attention you can get the directions then.
  • Sometimes installers will automatically update your shell’s config file to update your PATH for you
  • Sometimes just Googling “where does npm install things?” will turn up the answer
  • Some tools have a subcommand that tells you where they’re configured to install things, like:
    • Node/npm: npm config get prefix (then append /bin/)
    • Go: go env GOPATH (then append /bin/)
    • asdf: asdf info | grep ASDF_DIR (then append /bin/ and /shims/)

step 3.1: double check it’s the right directory

Once you’ve found a directory you think might be the right one, make sure it’s actually correct! For example, I found out that on my machine, http-server is in ~/.npm-global/bin. I can make sure that it’s the right directory by trying to run the program http-server in that directory like this:

$ ~/.npm-global/bin/http-server
Starting up http-server, serving ./public

It worked! Now that you know what directory you need to add to your PATH, let’s move to the next step!

step 4: edit your shell config

Now we have the 2 critical pieces of information we need:

  1. Which directory you’re trying to add to your PATH (like ~/.npm-global/bin/)
  2. Where your shell’s config is (like ~/.bashrc, ~/.zshrc, or ~/.config/fish/config.fish)

Now what you need to add depends on your shell:

bash instructions:

Open your shell’s config file, and add a line like this:

export PATH=$PATH:~/.npm-global/bin/

(obviously replace ~/.npm-global/bin with the actual directory you’re trying to add)

zsh instructions:

You can do the same thing as in bash, but zsh also has some slightly fancier syntax you can use if you prefer:

path=(
  $path
  ~/.npm-global/bin
)

fish instructions:

In fish, the syntax is different:

set PATH $PATH ~/.npm-global/bin

(in fish you can also use fish_add_path, some notes on that further down)

step 5: restart your shell

Now, an extremely important step: updating your shell’s config won’t take effect if you don’t restart it!

Two ways to do this:

  1. open a new terminal (or terminal tab), and maybe close the old one so you don’t get confused
  2. Run bash to start a new shell (or zsh if you’re using zsh, or fish if you’re using fish)

I’ve found that both of these usually work fine.

And you should be done! Try running the program you were trying to run and hopefully it works now.

If not, here are a couple of problems that you might run into:

problem 1: it ran the wrong program

If the wrong version of a program is running, you might need to add the directory to the beginning of your PATH instead of the end.

For example, on my system I have two versions of python3 installed, which I can see by running which -a:

$ which -a python3
/usr/bin/python3
/opt/homebrew/bin/python3

The one your shell will use is the first one listed.

If you want to use the Homebrew version, you need to add that directory (/opt/homebrew/bin) to the beginning of your PATH instead, by putting this in your shell’s config file (it’s /opt/homebrew/bin/:$PATH instead of the usual $PATH:/opt/homebrew/bin/)

export PATH=/opt/homebrew/bin/:$PATH

or in fish:

set PATH ~/.cargo/bin $PATH

problem 2: the program isn’t being run from your shell

All of these directions only work if you’re running the program from your shell. If you’re running the program from an IDE, from a GUI, in a cron job, or some other way, you’ll need to add the directory to your PATH in a different way, and the exact details might depend on the situation.

in a cron job

Some options:

  • use the full path to the program you’re running, like /home/bork/bin/my-program
  • put the full PATH you want as the first line of your crontab (something like PATH=/bin:/usr/bin:/usr/local/bin:….). You can get the full PATH you’re using in your shell by running echo "PATH=$PATH".

I’m honestly not sure how to handle it in an IDE/GUI because I haven’t run into that in a long time, will add directions here if someone points me in the right direction.

problem 3: duplicate PATH entries making it harder to debug

If you edit your path and start a new shell by running bash (or zsh, or fish), you’ll often end up with duplicate PATH entries, because the shell keeps adding new things to your PATH every time you start your shell.

Personally I don’t think I’ve run into a situation where this kind of duplication breaks anything, but the duplicates can make it harder to debug what’s going on with your PATH if you’re trying to understand its contents.

Some ways you could deal with this:

  1. If you’re debugging your PATH, open a new terminal to do it in so you get a “fresh” state. This should avoid the duplication.
  2. Deduplicate your PATH at the end of your shell’s config (for example in zsh apparently you can do this with typeset -U path)
  3. Check that the directory isn’t already in your PATH when adding it (for example in fish I believe you can do this with fish_add_path --path /some/directory)

How to deduplicate your PATH is shell-specific and there isn’t always a built in way to do it so you’ll need to look up how to accomplish it in your shell.

problem 4: losing your history after updating your PATH

Here’s a situation that’s easy to get into in bash or zsh:

  1. Run a command (it fails)
  2. Update your PATH
  3. Run bash to reload your config
  4. Press the up arrow a couple of times to rerun the failed command (or open a new terminal)
  5. The failed command isn’t in your history! Why not?

This happens because in bash, by default, history is not saved until you exit the shell.

Some options for fixing this:

  • Instead of running bash to reload your config, run source ~/.bashrc (or source ~/.zshrc in zsh). This will reload the config inside your current session.
  • Configure your shell to continuously save your history instead of only saving the history when the shell exits. (How to do this depends on whether you’re using bash or zsh, the history options in zsh are a bit complicated and I’m not exactly sure what the best way is)

a note on source

When you install cargo (Rust’s installer) for the first time, it gives you these instructions for how to set up your PATH, which don’t mention a specific directory at all.

This is usually done by running one of the following (note the leading DOT):

. "$HOME/.cargo/env"        	# For sh/bash/zsh/ash/dash/pdksh
source "$HOME/.cargo/env.fish"  # For fish

The idea is that you add that line to your shell’s config, and their script automatically sets up your PATH (and potentially other things) for you.

This is pretty common (for example Homebrew suggests you eval brew shellenv), and there are two ways to approach this:

  1. Just do what the tool suggests (like adding . "$HOME/.cargo/env" to your shell’s config)
  2. Figure out which directories the script they’re telling you to run would add to your PATH, and then add those manually. Here’s how I’d do that:
    • Run . "$HOME/.cargo/env" in my shell (or the fish version if using fish)
    • Run echo "$PATH" | tr ':' '\n' | grep cargo to figure out which directories it added
    • See that it says /Users/bork/.cargo/bin and shorten that to ~/.cargo/bin
    • Add the directory ~/.cargo/bin to PATH (with the directions in this post)

I don’t think there’s anything wrong with doing what the tool suggests (it might be the “best way”!), but personally I usually use the second approach because I prefer knowing exactly what configuration I’m changing.

a note on fish_add_path

fish has a handy function called fish_add_path that you can run to add a directory to your PATH like this:

fish_add_path /some/directory

This is cool (it’s such a simple command!) but I’ve stopped using it for a couple of reasons:

  1. Sometimes fish_add_path will update the PATH for every session in the future (with a “universal variable”) and sometimes it will update the PATH just for the current session and it’s hard for me to tell which one it will do. In theory the docs explain this but I could not understand them.
  2. If you ever need to remove the directory from your PATH a few weeks or months later because maybe you made a mistake, it’s kind of hard to do (there are instructions in this comments of this github issue though).

that’s all

Hopefully this will help some people. Let me know (on Mastodon or Bluesky) if you there are other major gotchas that have tripped you up when adding a directory to your PATH, or if you have questions about this post!

Read the whole story
· · · · · · · · · · ·
deebee
37 days ago
reply
America City, America
Share this story
Delete
Next Page of Stories