Ordoviz

joined 5 years ago
MODERATOR OF
[–] Ordoviz@lemmy.ml 9 points 1 month ago (11 children)

Using MIT license means the developers cannot look at GNU source code when writing code for uutils. This feels like a unnecessary hurdle given that uutils wants to be 100% compatible with GNU tools.

[–] Ordoviz@lemmy.ml 1 points 1 month ago

https://mwmbl.org/ has a custom index of user-submitted domains and user-curated results but it's not suitable for daily use yet.

[–] Ordoviz@lemmy.ml 2 points 2 months ago (1 children)

You can also put this in ~/.config/xkb/symbols/us-custom (create the parent directories if necessary) and set the environment variable XKB_DEFAULT_LAYOUT=us-custom. This works in most Wayland compositors, including river and niri. For Hyprland, you can add this to your config file:

input {
	kb_layout = us-custom
}

If you use GNOME, run

gsettings set org.gnome.desktop.input-sources mru-sources "[('xkb', 'us-custom')]"
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us-custom')]"

and restart GNOME.


This is my keyboard layout (I explained some bits of it here):

default partial alphanumeric_keys
xkb_symbols "basic" {
include "us(de_se_fi)" // Umlauts (ä, ö, ü) and €

include "level5(rctrl_switch)"

key.type[Group1] = "EIGHT_LEVEL";

// Number row
key <TLDE> {[ grave,      asciitilde,  dead_grave,           dead_tilde                                       ]};
key <AE01> {[ 1,          exclam,      onesuperior,          U2081                                            ]}; // x₁
key <AE02> {[ 2,          at,          twosuperior,          U2082                                            ]}; // x₂
key <AE03> {[ 3,          numbersign,  threesuperior,        U2083                                            ]}; // x₃
key <AE06> {[ 6,          asciicircum, dead_circumflex,      dead_caron                                       ]};
key <AE08> {[ 8,          asterisk,    enfilledcircbullet,   U22C5,               infinity                    ]}; // dot operator
key <AE10> {[ 0,          parenright,  NoSymbol,             NoSymbol                                         ]};
key <AE11> {[ minus,      underscore,  endash,               emdash,              U207B                       ]}; // x⁻
key <AE12> {[ equal,      plus,        notequal,             approxeq                                         ]};

// Top row
key <AD01> {[ q,          Q,           NoSymbol,             U211A,               NoSymbol,      NoSymbol     ]}; // ℚ
key <AD02> {[ w,          W,           NoSymbol,             NoSymbol,            Greek_omega,   Greek_OMEGA  ]};
key <AD03> {[ e,          E,           NoSymbol,             NoSymbol,            Greek_epsilon, U2203        ]}; // ∃
key <AD04> {[ r,          R,           NoSymbol,             U211D,               Greek_rho,     U03F1        ]}; // ℝ ϱ
key <AD05> {[ t,          T,           U03D1,                Greek_tau,           Greek_theta,   Greek_THETA  ]}; // ϑ
key <AD08> {[ i,          I,           U21d2,                U21d4,               Greek_iota,    integral     ]}; // ⇒ ⇔
key <AD09> {[ o,          O,           NoSymbol,             NoSymbol,            Greek_omega,   Greek_OMEGA  ]};
key <AD10> {[ p,          P,           section,              paragraph,           Greek_pi,      Greek_PI     ]};

// Home row
key <AC01> {[ a,          A,           NoSymbol,             NoSymbol,            Greek_alpha,   U2200        ]}; // ∀
key <AC02> {[ s,          S,           NoSymbol,             NoSymbol,            Greek_sigma,   Greek_SIGMA  ]};
key <AC03> {[ d,          D,           NoSymbol,             NoSymbol,            Greek_delta,   Greek_DELTA  ]};
key <AC04> {[ f,          F,           NoSymbol,             NoSymbol,            Greek_phi,     Greek_PHI    ]};
key <AC05> {[ g,          G,           degree,               NoSymbol,            Greek_gamma,   Greek_GAMMA  ]};
key <AC06> {[ h,          H,           U2190,                NoSymbol,            Greek_eta,     U2225        ]}; // ← ∥
key <AC07> {[ j,          J,           U2193,                NoSymbol,            NoSymbol,      NoSymbol     ]}; // ↓
key <AC08> {[ k,          K,           U2191,                NoSymbol,            Greek_kappa,   U03F0        ]}; // ↑ ϰ
key <AC09> {[ l,          L,           U2192,                NoSymbol,            Greek_lambda,  Greek_LAMBDA ]}; // →
key <AC10> {[ semicolon,  colon,       dead_diaeresis,       NoSymbol,            NoSymbol,      NoSymbol     ]};
key <AC11> {[ apostrophe, quotedbl,    rightsinglequotemark, NoSymbol,            NoSymbol,      NoSymbol     ]};
key <AC12> {[ backslash,  bar,         U2500,                U2502,               NoSymbol,      NoSymbol     ]}; // box drawing

// Bottom row
key <AB01> {[ z,          Z,           NoSymbol,             U2124,               Greek_zeta,    U2220        ]}; // ℤ ∠
key <AB02> {[ x,          X,           multiply,             NoSymbol,            Greek_xi,      Greek_XI     ]};
key <AB03> {[ c,          C,           NoSymbol,             U2102,               Greek_chi,     copyright    ]}; // ℂ
key <AB04> {[ v,          V,           doublelowquotemark,   singlelowquotemark,  Greek_psi,     Greek_PSI    ]};
key <AB05> {[ b,          B,           leftdoublequotemark,  leftsinglequotemark, Greek_beta,    NoSymbol     ]};
key <AB06> {[ n,          N,           rightdoublequotemark, rightsinglequotemark,Greek_nu,      U2115        ]}; // ℕ
key <AB07> {[ m,          M,           U2212,                plusminus,           Greek_mu,      NoSymbol     ]}; // minus
key <AB08> {[ comma,      less,        dead_cedilla,         NoSymbol,            U27e8,         NoSymbol     ]}; // ⟨
key <AB09> {[ period,     greater,     ellipsis,             dead_abovedot,       U27e9,         NoSymbol     ]}; // ⟩
key <AB10> {[ slash,      question,    division,             questiondown,        NoSymbol,      NoSymbol     ]};
};

GNOME Settings shows a visual preview of the first four layers:

See also this writeup by Leon Plickat.

[–] Ordoviz@lemmy.ml 9 points 4 months ago

Store your Firefox profile and all tabs in RAM for snappier browsing: https://wiki.archlinux.org/title/Firefox/Profile_on_RAM

[–] Ordoviz@lemmy.ml 18 points 6 months ago (3 children)
[–] Ordoviz@lemmy.ml 10 points 2 years ago (5 children)

Don't blindly run untrusted software, use Bubblewrap at the very least. Keep https://xkcd.com/538/ in mind.

[–] Ordoviz@lemmy.ml 14 points 2 years ago

OpenStreetMap and Internet Archive because they are operating with a small budget (as opposed to Wikipedia).

[–] Ordoviz@lemmy.ml 3 points 2 years ago
#!/bin/sh
# Select a file with fzf from a database sorted by frecency and open it using
# xdg-open. frece can be found at https://github.com/YodaEmbedding/frece

DB_FILE=${FRECE_FILES_DB:-$HOME/.cache/frecent-files.csv}
item=$(frece print "$DB_FILE" | fzf --tiebreak=index --scheme=path)

[ -z "$item" ] &amp;&amp; exit 1
frece increment "$DB_FILE" "$item"

xdg-open "$item"

#!/bin/sh
# Update frece database

DB_FILE=${FRECE_FILES_DB:-$HOME/.cache/frecent-files.csv}
tmp_file=$(mktemp)
fd -H . ~ > "$tmp_file"  # use ~/.fdignore file to exclude certain dirs
frece update "$DB_FILE" "$tmp_file" --purge-old
rm "$tmp_file"

[–] Ordoviz@lemmy.ml 3 points 2 years ago (1 children)

The mojo, cpan and pip bash scripts don't fail my test of "skimming over the source and looking for dangerous external commands like curl or rm" (good syntax highlighting is helpful here). They look like typical completion scripts. However, if your Linux distribution has a pip completion script in their repos, prefer that one.

[–] Ordoviz@lemmy.ml 3 points 2 years ago (1 children)

Wired has removed the story because it “does not meet [their] editorial standards”.

[–] Ordoviz@lemmy.ml 4 points 2 years ago

Wired has removed the story because it "does not meet [their] editorial standards".

 

Demonstrating how easy it is to get hacked

 

cross-posted from: https://lemmy.ml/post/188331

Get Celeste, Baba is You, A Short Hike, Minit and many other indie games while supporting charity.

 

I use RSS feeds and mpv to watch YouTube without visiting youtube.com. This post shows how you can configure mpv to use yt-dlp instead of the abandoned youtube-dl.

 

Eye-opening video which explains Nintendo’s new design philosophy by comparing Origami King, Breath of the Wild, and Odyssey to older Nintendo games and similar games from other publishers.

The title sounds more negative than the video actually is.

view more: next ›