• 1 Post
  • 176 Comments
Joined 2 years ago
cake
Cake day: August 4th, 2023

help-circle

  • TootSweet@lemmy.worldtoLinux@lemmy.mlI like gentoo :D
    link
    fedilink
    English
    arrow-up
    2
    ·
    14 days ago

    So, I’ve been using Arch Linux ARM on Raspberry Pis for some “desktop systems” as well as for a janky-ass NAS solution, but that project is kindof dying. They go many months in a row sometimes without any package updates. It’s wild. And when people ask WTF is going on and offer beg to be allowed to help in some way, the admins lock the thread.

    So, I’ve been looking to switch my Raspberry Pi’s to something that doesn’t depend so much on some “project” out there to be able to continue to use.

    The main Gentoo project fully supports ARM. And even if it didn’t, it’d be a lot easier to use Gentoo without support than Arch.

    Switching my main box (not a Raspberry Pi – it’s an x86_64 system) to Gentoo was basically for the purpose of trying out Gentoo again and evaluating whether I want to take the plunge and switch everything to Gentoo.

    Aside from that, there’s SystemD which is yucky. (Yes, I know about Artix, but when last I tried it, it didn’t really feel “ready for prime time”. It depends a lot on the main Arch repos.)

    Plus, I do kindof like the idea of “more control over my system(s)”. Configuring/compiling my own kernel (yes, you can do that on Arch, it’s much less “in the spirit of” Arch) to make it as minimal as possible and disable everything I don’t need. And of course USE flags are a plus if you want a light system.

    Anyway, those are my main reasons.


  • TootSweet@lemmy.worldtoLinux@lemmy.mlI like gentoo :D
    link
    fedilink
    English
    arrow-up
    11
    ·
    15 days ago

    Me too!

    I used Gentoo almost exlusively from like 2003 to maybe 2012 or 2013. I switched to Arch about then. But quite recently I made the switch back to Gentoo on my primary box and I’m happy I did.

    Only thing I still need to do to really make it long-term sustainable for my particular use is to set up a build server on my network. My “primary box” is in the room where I sleep and I need it dark and quiet when I’m sleeping. Can’t have MOBO color-shifting LEDs and fan sounds overnight. And I can’t compile something like Chromium in less than the 15-to-16-ish hours I’m awake in a given day. (And I’d prefer to compile it myself rather than using a binary package.) Hence the need for a build server.


  • I’ll try to say this delicately enough to not get banned…

    The modlog (which also contains the full text of my post) cites as the reason for the removal of my post “rule 1” which according to the sidebar is “Be civil and nice.”

    I think they consider any criticism of the government of Iran to be “incivility” and/or “meanness”.

    (Hopefully I’m not misinterpreting the mods here. Mods, please feel free to step in and correct any such misrepresentation.)





  • TootSweet@lemmy.worldtoMemes@lemmy.mlhey L.W mods/admins, how's it going?
    link
    fedilink
    English
    arrow-up
    24
    arrow-down
    1
    ·
    2 months ago

    Anyone want to place bets on how long it is before Elon uses this as an excuse to whisper in Trump’s ear that he needs to classify the Fediverse as a terrorist organization? It’d conveniently shut down competition with Xitter (and other billionaire-owned social media sites) if Mastodon (and Lemmy and PeerTube and Diaspora etc) was shut down for “RaDiCaLiZiNg fErTiLiTy ClInIc BoMbErS” or whatever BS.












  • Does it really do any good for the drive to be encrypted if it doesn’t require a password (or Yubikey or retinal scan or other authentication factor) on boot? If you’re just going to put the plaintext key/password on the same drive but in a partition that’s not encrypted, there’s no point encrypting the drive, right?

    So maybe “it asks for a password on boot” is more of a “works as intended” thing?

    How will I access the encrypted devices after installation? (System Startup) During system startup you will be presented with a passphrase prompt. …

    The quote above is from Fedora documentation here

    This is your root FS that’s encrypted that we’re talking about, correct?

    If you really want an encrypted root but no password on boot and the plaintext decryption password/key on the same drive, there are ways to do it. (It would probably require customizing the initramfs somehow. But it’s Linux, and Linux certainly isn’t going to prevent you from doing such things. Just try to dissuade you.)

    If we’re not talking about a root filesystem, that would likely change some things. If it’s Luks, I’m pretty sure it wouldn’t matter particularly where on your filesystem the key was so long as your /etc/crypttab refers to it. I’d say that sort of setup would probably only provide additional security if the encrypted drive is an external drive that you might worry could be stolen or physically accessed when the attacker doesn’t have physical access to your root filesystem.

    Also, if you shared what encryption scheme was in use (Luks, Anaconda, etc), that would probably help as well.

    Edit: Ah. Ok. You gave more info while I was typing the above response. What you want is unlocking via ssh. For sure.


  • Great question!

    So, first off, if I knew what app(s) specifically you have in mind, that’d help me answer better, but in general:

    • First off, I’ll say it’s mostly less that they support pacman than that Arch supports them. There may be some exceptions, but it’s usually Arch developers building the pacman packages rather than the author of the software in question. Even when it’s a proprietary application, it’s usually bundled into a packman package (or at least a PKGBUILD for it lives on AUR, but we’ll get to that) by one of the Arch developers or other volunteers.
    • Your first option for software that isn’t in the official Arch repositories is AUR. It’s for packages that aren’t as officially supported as those in the official Arch repositories. Anything in AUR, you’ll have to build the package itself (which usually involves compiling, unless it builds the package from an already-compiled binary), but the process is usually pretty straightforward. (Download and unzip the tarball from AUR somewhere, cd into the directory, and then makepkg -sf && sudo pacman -U <something>.tar.xz. You can also get some helper scripts that do some of those steps for you for convenience. Definitely worth having the experience of doing it manually a few times first, though, I’d say.) Even if the only way to get the software in question from the publisher is in .deb form, you may still find a package on AUR that will unpackage the .deb and package the result up into an Arch package.
    • You can run the software in an isolated way. There are snap packages and flatpacks, but… well, there are good reasons why they get a bad rap. Lol. Another option is to build an Ubuntu chroot in which to install the package in there. The cleanest and most straightforward option for running software isolated like this is probably Docker. (Running graphical apps in Docker can definitely be done, though it is a little tricky.)
    • You can grab the software in question and install it manually somewhere in your home directory. Somewhere like $HOME/install/<softwarename>. This can work even if the software is only available as a .deb file. You can just extract the .deb without installing it with the command ar x <blah>.deb and a tar -xf data.tar.gz and then put the files from within that .deb file where you want them.
    • There are some other options that I’ve never tried (and only learned of just now by googling) that… aren’t recommended. Here’s a link for reference, but to somewhat explain the problems that those approaches there can cause, when you install a package from any particular package manager, the package manager installs dependencies. (Typically those dependencies are shared libraries. Think ".dll"s.) And those dependencies live in specific places. But if, say, you had pacman and apt-get installed on the same system and install the same dependency (including if that dependency is installed automatically as part of installing something else) via both package managers, it’s likely to get one version of the dependency from one package manager and another from the other. Either one package manager is going to error out (“these files already exist in the filesystem, I think something’s wrong that a human should fix”) or overwrite files potentially breaking things. (Now, all that said, I know that pacman is actually in the official Ubuntu repositories and can be installed on Ubuntu alongside apt get. I have to admit I don’t know if and if so how it goes about avoiding problems if both are installed. Maybe it’s not a good idea to install pacman on Ubuntu for the same reason. Who knows!)
    • So, there is also the option to write your own PKGBUILD. (A “PKGBUILD” is a script that tells your Arch system how to build a Pacman package. They’re what you download from AUR when you want to build/install something from AUR. A couple of reference links.) It does require doing a little Bash programming, but It’s not as hard as it sounds. (And it’s easier than building Ubuntu packages.) I’ll talk about what to do if you truly can’t get the package in question anyhow except in .deb form. But first, if you can get the source code, you can typically grab a PKGBUILD from the official Arch repositories or from AUR that installs something “similar” to what you’re wanting to install and modify it. (Like, for a simple example, if you’re trying to install something written in C, you can look for a PKGBUILD for something written in C that would probably have similar dependencies.) If you can’t get the source code but can get a compiled distribution of the software in question, you can still write a PKGBUILD, and you’ll probably be able to find some PKGBUILDs to start from that would be pretty similar to what you need.
    • If you truly can’t get the software in question except in .deb form and you want to write a PKGBUILD for it, that can be done. It just involves writing a PKGBUILD that extracts the files from the .deb file and then packages them back up into an Arch package. I’ve done this before and I have a funny personal story about that. More info here in an answer to another question in this same Lemmy community.

    Just in case it’s useful to you, I’ll share the PKGBUILD I wrote for converting the Ubuntu kernel into an Arch package. It demonstrates how you’d go about extracting files from a .deb file in order to build them into an Arch package.

    pkgname='linux-ubuntu'
    pkgdesc='The Ubuntu kernel, modules, and headers'
    pkgver='5.15.0'
    _pkgver="$(cut '-d.' -f 1,2 <<< "${pkgver}")"
    _firmware_ver='1.187.29'
    _suffix_ver='20.04.2'
    pkgrel='25'
    arch=('x86_64')
    options=('!strip')
    url='http://ubuntu.com/'
    source=(
        'http://archive.ubuntu.com/ubuntu/pool/main/l/linux-firmware/linux-firmware_'"${_firmware_ver}"'_all.deb'
        'http://archive.ubuntu.com/ubuntu/pool/main/l/linux-hwe-'"${_pkgver}"'/linux-headers-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
        'http://archive.ubuntu.com/ubuntu/pool/main/l/linux-hwe-'"${_pkgver}"'/linux-hwe-'"${_pkgver}"'-headers-'"${pkgver}"'-'"${pkgrel}"'_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_all.deb'
        'http://archive.ubuntu.com/ubuntu/pool/main/l/linux-signed-hwe-'"${_pkgver}"'/linux-image-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
        'http://archive.ubuntu.com/ubuntu/pool/main/l/linux-hwe-'"${_pkgver}"'/linux-modules-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
        'http://archive.ubuntu.com/ubuntu/pool/main/l/linux-hwe-'"${_pkgver}"'/linux-modules-extra-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
        'linux.preset'
    )
    noextract=(
        'linux-firmware_'"${_firmware_ver}"'_all.deb'
        'linux-headers-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
        'linux-hwe-'"${_pkgver}"'-headers-'"${pkgver}"'-'"${pkgrel}"'_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_all.deb'
        'linux-image-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
        'linux-modules-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
        'linux-modules-extra-'"${pkgver}"'-'"${pkgrel}"'-generic_'"${pkgver}"'-'"${pkgrel}"'.'"${pkgrel}"'~'"${_suffix_ver}"'_amd64.deb'
    )
    sha256sums=(
        '22697f12ade7e6d6a2dd9ac956f594a3f5e2697ada3a29916fee465cc83a34a1'
        '595794e8ad28ed130af60e6ec8699313e1935ae70f7530a00b06dff67fb4d40e'
        '22dbdc1895f91d3ad9d4c5b153352f1cc8359291dba6ea1a0e683cc6871b0f58'
        '5705cefab39dd5512bcc515918d09153715c7bb365d6bc29cc9b0580e5723eef'
        '3d207388812e957447162c067fb637b4d06eccb4f303b801e8402046a7d3cf48'
        '2f1214dbb04cb47ce8d096bff969fca9c78c26ec21a395c12922eca43cc18e26'
        '75d7d4b94156b3ba705a72ebbb91e84c8d519acf1faec852a74ade2accc7b0ea'
    )
    
    package() {
        for f in "${noextract[@]}" ; do
            ar x "${f}"
            tar -xf "data.tar.xz" -C "${pkgdir}"
        done
        rm -r "${pkgdir}"'/usr/share'
        rm -r "${pkgdir}"'/usr/lib'
        mv "${pkgdir}"'/lib' "${pkgdir}"'/usr'
        install -Dm644 'linux.preset' "${pkgdir}"'/etc/mkinitcpio.d/linux.preset'
    }
    

    (I omitted the linux.preset file. It’s just in the same directory with the PKGBUILD and it gets bundled into the Arch package. But it’s not really important for what you’re doing unless you’re trying to install a different kernel than the official Arch kernel on an Arch system.)

    The part that extracts the files from the .deb packages is the ar x command and the tar -xf command. The package() function there is what decides exactly what files will be in the Arch package and where. And makepkg builds the package archive after running package().

    That covers all the options for installing software not in the Arch repos that I can think of.