32
submitted 2 years ago by Ret2libsanity@lemmy.world to c/linux@lemmy.ml

I’ll start:

  • Tmux
  • vim
  • ghidra
  • okteta (hex editor)
  • speedcrunch (calculator with bit manipulation)
  • python3 with IPython for nice reply and embed(), pwntools
top 45 comments
sorted by: hot top controversial new old
[-] skillissuer@lemmy.world 17 points 2 years ago
[-] toomuchbeer@lemmy.world 4 points 2 years ago

This is amazing. Thank you!

[-] BaroqueInMind@kbin.social 3 points 2 years ago

Holy shit I need this.

[-] nekat_emanresu@lemmy.ml 1 points 2 years ago

Another of those rare times I don't expect to laugh in a thread.

[-] Fryboyter@discuss.tchncs.de 7 points 2 years ago* (last edited 2 years ago)
[-] andrew@lemmy.stuart.fun 2 points 2 years ago

I'd drop keepassxc and pick up GNU password store or gopass. Pgp+git and a nice cli to wrap them onto an encrypted password store that's pretty easy to move around these days.

[-] Fryboyter@discuss.tchncs.de 3 points 2 years ago

GNU password store

The tool, unless something has changed in the meantime, has one major drawback for me. The filename of the encrypted files is displayed in plain text. However, I don't want people to be able to see, for example, which Internet sites I have an account with. Sure you can name the files otherwise. But how should I remember for example that the file dafderewrfsfds.gpg contains the access data for Mastodon?

In addition, I miss with pass some functions. As far as I know, you can't save file attachments. Or define when a password expires. And so on. Pass is therefore too KISS for me.

Pgp+git and a nice cli to wrap them onto an encrypted password store that’s pretty easy to move around these days.

A matter of opinion, I would say. I prefer my Keepass file which I can access via my Nextcloud instance or which is stored on a USB stick on my keychain.


By the way, the file is secured with a Yubikey in addition to a Diceware password. So saving it in the so-called cloud is no problem. Just as a note, in case someone reading my post wants to make smart remarks about the cloud.

[-] FarLine99@lemm.ee 0 points 2 years ago

micro text editor is very good. powerful and simple.

[-] Fryboyter@discuss.tchncs.de 1 points 2 years ago

For me, this is the main reason why I use micro. And because I don't like the handling of vim. Funnily enough, I've been playing around with Helix for a while now and I really like the editor, even though it's a modal editor, just like vim. Maybe because of the selection → action model. The question is, do I like Helix better than micro? I still have to answer that question for myself at some point.

[-] Omniformative@lemm.ee 5 points 2 years ago

Desktop:

  • distrobox
  • brave
  • flatpak
  • neovim
  • nix
  • fish
  • tmux
[-] GustavoM@lemmy.world 5 points 2 years ago
  • docker (What, you never wanted to use a optimized version of cmatrix that uses only 512KiB of ram while barely scratching your CPU?)
  • foot
  • brave
  • (on docker) btop, cmatrix, lynx
[-] physicswizard@lemmy.ml 3 points 2 years ago

What is this optimized cmatrix you speak of? The normal one slows my desktop to a crawl when it runs.

[-] GustavoM@lemmy.world 1 points 2 years ago

Basically, a "handcrafted" cmatrix with compilation flags focused on optimization and the musl library (which is "technically better" than glib, a standard library on most distros).

Do feel free to try it out however, its only 139KiB -- click here.

tl;dr guide on how to get it running

1- Install docker (docker on most distros -- docker.io on ubuntu and friends)

2- sudo usermod -aG docker (addyourusernamehere)

3- reboot

4- run it with "docker run -it --rm --log-driver none --net none --read-only defnotgustavom/cmatrix:marchedition"

[-] spauldo@lemmy.ml 5 points 2 years ago

For everything:

  • vi/vim
  • ssh & sshd

For everything except firewalls:

  • C, C++, Perl, Common Lisp, Scheme programming tools
  • lynx
  • wget/curl
  • git
  • ksh (on *BSD)
  • telnet (yeah, there's equipment that still uses telnet out there)

For a desktop:

  • Emacs
  • xterm
  • GNU plotutils
  • TeXlive
  • X11 utilities (xcalc, editres, etc.)
  • Atmel and Arduino toolchains
  • xpdf
  • KDE
  • KiCad
  • GIMP
  • Inkscape
  • Firefox
  • Chromium
  • Kerbal Space Program
[-] Ticktok@lemmy.one 4 points 2 years ago* (last edited 2 years ago)

One that I didn't see on here that I've added to my list

  • tldr
    • simplified man pages with common example commands.-

If on desktop

  • distro-box
  • yakuake
[-] MavTheHack@lemmy.fmhy.ml 3 points 2 years ago

I see a lot of the good ones are already mentioned. But I can't use a linux system for more than an hour without 'thefuck' installed

[-] moroviintaas@infosec.pub 3 points 2 years ago* (last edited 2 years ago)
  • vim
  • git
  • rust (via rustup)
  • codium
  • pycharm ce
  • nu (shell)
  • starship (shell prompt)
  • firefox
  • sway
  • alacritty
  • python
  • iproute (or whatever package has ip in distro)
  • keepassxc
  • gcc/g++
  • make
  • podman (or docker)
[-] pearsche@lemdro.id 3 points 2 years ago* (last edited 2 years ago)
  • ardour
  • kdenlive
  • vscode
  • kdenlive
  • gnome
  • xmrig
  • fish
  • element
  • telegram
[-] Cybersteel@lemmy.ml 2 points 2 years ago
[-] moonlit_properly@lemmy.one 2 points 2 years ago
  • alacritty
  • neovim
  • tmux
  • vifm - terminal file manager with vi keybindings.
  • zathura - pdf reader with vi keybindings.
  • inxi - prints information about your hardware.
  • tldr - cheat sheet for common commands
  • qalculate - the most powerful calculator I've seen. There are qt, gtk and cli versions of it.
  • moreutils - collection of tools. My favourite is vidir, it opens directory structure in your terminal text editor, so that you can rename multiple files easily.
[-] Ocebi@lemmy.world 1 points 2 years ago
  • exa
  • ripgrep
  • tree
  • difftastic
  • fzf
  • git
  • neovim
  • zsh
  • starship
  • direnv
  • bat
[-] Fizz@lemmy.nz 1 points 2 years ago

Firefox, only office and spotify. That's all I need.

[-] orcrist@kbin.social 1 points 2 years ago

Depends on what the machine is for.

[-] PlexSheep@feddit.de 1 points 2 years ago* (last edited 2 years ago)

Adding to that:

  • neovim for workstations
  • curl
  • wget
  • zsh

Edit: So essentially for me, I forgot to include it: vim, my beloved, always and for ever

[-] Ret2libsanity@lemmy.world 0 points 2 years ago

Def curl and wget!

Zsh is great but I ended up falling back to bash for simplicity.

[-] PlexSheep@feddit.de 1 points 2 years ago

Im not really into the bash simplicity, but it's proven and stable.

I just have a git repo with configs on my git Server, I make changes regularly and roll them out with a quick bash script.

[-] redcalcium@c.calciumlabs.com 0 points 2 years ago* (last edited 2 years ago)

Every time I setup a new system, I always install these:

  • vim
  • zsh
  • git
  • rsync
  • tmux
  • mosh
  • btop
  • autossh
  • mc
  • direnv
  • asdf-vm

If the system is a desktop/laptop for personal use, then I'll install these too:

  • virt-manager
  • vscode
  • firefox
  • filezilla
  • mpv
  • yt-dlp
  • kdeconnect
  • onlyoffice
[-] letbelight@lemmy.ml 0 points 2 years ago

I would swap only with Libreoffice

[-] redcalcium@c.calciumlabs.com 1 points 2 years ago

This is just a matter of personal preference, but I can't stand libreoffice UI. It has more features but I don't open office documents much, mostly just some basic spreadsheets, so I can get away with using a document editor with less feature but easier to the eye.

[-] antihero@social.fossware.space 0 points 2 years ago* (last edited 2 years ago)
[-] StudioLE@programming.dev 2 points 2 years ago

Damn. Even the website documenting their design is ugly as sin.

[-] zoe_codez@lemmy.digital-alchemy.app 0 points 2 years ago* (last edited 2 years ago)
  • htop
  • docker
  • zsh
  • tmux
  • ssh
  • git
  • rsync
  • curl
  • dnsutils
  • jq
  • nodejs (managed via fnm)
[-] Sebito@lemmy.ml 0 points 2 years ago* (last edited 2 years ago)
  • Kitty
  • fish + all the shell builtins
  • LunarVim (Neovim)
  • git + lazygit
  • openssh
  • npm
  • cargo
  • docker

Edit:

  • wget
  • httpie
  • tar & (un)zip
[-] letbelight@lemmy.ml 1 points 2 years ago

Try podman it's lighter than docker. 😂

[-] Sebito@lemmy.ml 1 points 2 years ago

I will! I once already used it for cross compiling and it seemed really nice ^^

[-] andrew@lemmy.stuart.fun 1 points 2 years ago* (last edited 2 years ago)

And runs in unprivileged mode (nonroot) quite nicely.

[-] InkstainTheBat@lemmy.ml 0 points 2 years ago* (last edited 2 years ago)

Since I'm not sure where to ask what is probably a basic question, what's a Linux package?

[-] corsicanguppy@lemmy.ml 0 points 2 years ago

It's a signed archive of deployable files along with meta-data. Usually a cpio archive (which is similar to a tarball) with that extra signature wrapper and meta-data (which, itself, should be a list of files and checksums).

A proper package can validate a project's installation, either from the local database or from remote resources, at any time, which gives positive assurance that what is installed is what should be installed.

As well, proper package info is exported by SNMP to be consolidated centrally and validate what is vs what should be installed at the group level.

TL;DR? Like a tarball with tracking info, signatures, checksums, and top-to-bottom validation. If it's a good package, anyway.

[-] RandallFlagg@lemm.ee 0 points 2 years ago

So it's basically like installing a program in windows but, idk how to phrase it, more through and less prone to errors during installation?

[-] corsicanguppy@lemmy.ml 2 points 2 years ago

You're really close, yeah .

But because like every layer is checksummed both in delivery AND when it's installed, so you can easily validate a delivered file, and it's all signed with signatures you can easily check, you can at least be assured that

  • what you installed is what that package delivered
  • which is what the authors wanted
  • and the package probably hasn't been tampered with
  • even weeks after install

the chance of problems should be reduced.

Bonus1: with a proper repo config, you can check for updates so fast. It's like the chocolatey windows repo but more formalized and usually vendor-maintained.

Bonus2: bad upgrade? Enterprise packages on Linux (long description; trust me) can be reverse-installed over what's there so you can back-revise or downgrade with almost no pain. It's a good oh-no fix. At every point you can still validate that what is there should be there, according to hard signatures at every stage.

Bonus3: grabbing os version 6.1 and upgrading to 6.5 OR just installing 6.5 fresh gives the same final content - files and services - when you're done. (almost entirely) No cruft, since package installs (because of the locking below) just install over themselves in a way Linux people just accept and windows people may freak over.

Linux bonus: Linux locks file differently; again, long description, so trust me or look it up. You can upgrade many files and services without stopping them, and then bounce a service or a host, so your patch-and-bounce process is fast, it happens after the upgrades, and is like 2 min or with systemd 3min.

Ultimately

  • use packages for wayyyy easier, consistent, reliable, tested, quasi-roll-back-able updates that you can validate all the way down.
  • and still that SNMP connection to check content remotely. It's so great.
[-] RandallFlagg@lemm.ee 0 points 2 years ago

It's just a fancy way of saying program. So Linux programs.

[-] wizzor@sopuli.xyz 1 points 2 years ago

Correct, the reason they are called packages, is that the package can contain other resources besides usable programs, like libraries used by other programs.

[-] polskilumalo@lemmygrad.ml -1 points 2 years ago
load more comments
view more: next ›
this post was submitted on 11 Jul 2023
32 points (100.0% liked)

Linux

50249 readers
1520 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS