Posts
4937
Following
327
Followers
492
Linux kernel hacker and maintainer etc.

OpenPGP: 3AB05486C7752FE1

Jarkko Sakkinen

On #macOS least tedious way to run ALSO full #VM's IHMO (I don't care about #Docker): https://orbstack.dev/

#Apple sucks deeply providing #developer experience but this seems make things somewhat usable. Invention in #orbStack is that VM's use bind mounts (i.e. a bit like #WSL2).

In addition it has great preset gallery, got my Fedora up and running within 3 minutes.
1
1
0
@backslash Ah, I read your original post again, and apparently got it wrong. My bad, sorry.
0
0
0
@backslash Hmm. In GNOME (Fedora) I just go to keyboard setting, and add 'fi'. After that Super-SPACE just works (in my case at least). I use almost unmodified Fedora latest in my main Linux workstation.
1
0
0
@raven667 Never tried Konsole, and I've used tmux for past 10 years, which does have splits. So it takes care of my tabs and splits ;-) Main reason it being ubiquitos, i.e. takes care of split also in remote machines.
1
0
0
@chrisdenton I'm considering a T-shirt design:
0
1
1
@chrisdenton I'm considering a T-shirt design:
0
1
1

Jarkko Sakkinen

Edited 1 year ago

@chrisdenton So I noticed now that replacing rs file with ANSI escape sequence of any kind but long enough makes rustc to throw error dump like the one I got.

E.g.

\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)\1\e[38;5;015m\2uu\1\e[0m\2\1\e[38;2;191;254;33m\2(ins)

works pretty well ;-)

1
0
0

LWN.net is now @LWN@lwn.net

Silva: How to use the new counted_by attribute in C (and Linux)

https://lwn.net/Articles/982275/

0
3
0
Not a tmux issue, happens with and without, and also nothing to scrollback. It just gives a single screen of garbage as an "error message".
0
0
0

Jarkko Sakkinen

Edited 1 year ago

#rustc blows up completely when replacing a source file under ~/.cargo/registry/src with random data. It really should do better. This is not appropriate way to signal memory corruption, shouldn’t memory safety take care of this? :-) #rust #rustlang

2
0
1

Jarkko Sakkinen

Edited 1 year ago
@hjvt I found proper memory mapping primitives from vm-memory, they are just under "xen" feature flag, e.g. https://docs.rs/vm-memory/latest/vm_memory/mmap/struct.MmapRange.html.

I don't get the reason for "xen-only" but the API is reasonable and quick skim to source seems to give same impression.

So I see where that leads me. If possible I'd prefer vm-memory most only because of its volume. I.e. most likely to stay alive and maintained.
1
0
0

Jarkko Sakkinen

Edited 1 year ago

This is how I integrate rusty tags in my .zprofile:

# rusty-tags
[ `command -v rustc` ] && RUST_SRC_PATH=$(rustc --print sysroot)/lib/rustlib/src/rust/library/
[ -d $RUST_SRC_PATH ] && export RUST_SRC_PATH

I still prefer #ctags over LSP.

#rust #rustlang

0
0
1

Jarkko Sakkinen

A great mental model for #git reflog:

  1. Git tree represents commit history.
  2. Reflog represents the linear history of Git events, i.e. changes to 1.

#linux #kernel

0
1
0

Jarkko Sakkinen

Edited 1 year ago

Another often ignored #git #hack is using either -Xtheirs or -Xours when picking/applying/rebasing commits.

Often it is easier to be brutal and then review carefully and add possible missing bits.

#linux #kernel

0
1
1

Reflog be cleaned by git reflog expire --expire=all.

0
0
0

Jarkko Sakkinen

Edited 1 year ago

I get a feeling from my feed lately that not that many kernel dev’s are too familiar with git reflog, which is essential tool for solving exactly the situations of e.g.

  1. Being in-between git am.
  2. Being in-between git rebase.
  3. Being in-between git cherry-pick.

Ignoring git merge because I’ve never used it in my career for any possible kernel dev task ;-)

It is really worth of the effort learn this subcommand properly. You won’t regret the investment.

Reflog a local cache and/or timeline of commit ID change’s at the tip. It is not stored to history and is completely ignorant, orthogonal and disjoint from whatever state the Git tree might be in.

#git #linux #kernel

1
4
4
Show older