This seems like not the right community for this post, but I appreciate the sentiment.
Can you get bird flu by sharing needles with a bluejay?
Just about everyone looks better when they smile.
You’re the one who brought looks into it.
Well, I’m a mod of !fuck_ai@lemmy.world, so…
The rise of what recently/popularly has been referred to as “AI” is a massive scam/bubble.
This is the dadest dad joke.
“Osama Bin who?” And in a similar vein, “Jihad? That’s a Dune reference, right?”
“I’ll cash in on my Beanie Baby investment when it’s time to pay for my kid’s college tuition.”
“The internet is just a fad.”
“I’m so excited for the next The Matrix sequel.”
“Two bedrooms and a walk-out basement. $300 a month rent.”
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:
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.$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.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.
Yes I am op.
Ha! That’s what I get for posting on Lemmy at 2:00 am. Lol.
So I guess I should just skip anything with a desktop environment like manjaro and just figure out how to install bare arch?
You can certainly start with a bare Arch install and install on top of that a graphical environment. (Without a graphical environment, you wouldn’t be able to run a full-featured browser like Firefox or Chromium or whatever, for instance. I’d think if you intend to use this system as your daily driver – and I’d recommend you do for learning sake – you’ll probably want a graphical environment.) But, yeah. I’d say Arch isn’t that unapproachable to install without going the Manjaro route or the “archinstaller” route.
With Arch, everything’s just packages. The difference between non-graphical Arch and graphical Arch is just that non-graphical Arch doesn’t have any graphical system packages installed.
Now, I keep talking about “graphical systems”. There are two ways to go with that. There is X11 which is mature but a bit dated. And there’s Wayland which is the new hotness but support for it is still a bit lacking, so some features like screen grab may not be supported by all programs and some programs won’t work as straightforwardly on Wayland. (Basically, any time a program grabs an image or video of any portion of the screen of your graphical environment, that uses the “screen grab” API. Wayland does that differently than X11, so a lot of programs aren’t updated to use Wayland’s way yet.)
I guess I’d probably lean toward recommending X11 at this point. I personally use a Wayland compositor (Sway, specifically), but I don’t think running Wayland is going to teach you much that X11 won’t, and running Wayland at this point is likely to introduce frustrating wrinkles. If after you have your Linux “sea legs” you want to try switching, that’s always an option as well.
As for minimal X11 environments, first off, I’d say avoid things that describe themselves as “desktop environments”. They’re likely to hide details from you. Prefer “window managers.” Tiling window managers tend to be more minimal, but if you want to go with a more draggy-droppy, mouse-driven window manager that feels more like what you’re probably used to (but also doesn’t hide details), I’d recommend IceWM.
And, finally, as far as a “bare Arch install”, the place to start is the install guide on the Arch Wiki. It goes step-by-step on how to do things. And take the time to understand the commands you’re running as you’re running them. There are a lot of links in the install guide to more in-depth articles. For instance, the “partitioning” section links to an article called “partitions” that goes in depth on what a “partition” even is.
There’s a lot to learn, but it also pays off. Both in terms of just having the power to do the stuff you want with your own systems and in terms of benefits to your career. And it’s just plain fun!
Good luck! I’m honestly a little jealous of you getting to start this journey for the first time!
Is bash ultimately better than dolphin or another file manager?
Yes. (Disclaimer, some statements contain opinion.)
OP was specifically asking how to learn more about Linux. And it’s nearly unquestionable that OP is going to learn more about how Linux works if they use the lower-level tools rather than take-you-by-the-hand point-and-click-adventure programs your grandmother could probably figure out.
I always thought that it just seamed slow having to read things out with no icons and having to type the filename instead of double clicking.
So, again, this is just me spouting my own preferences here, but I don’t often touch the mouse. Moving my hand from keyboard to mouse takes time. I can use a keyboard shortcut to open a terminal, cd into the proper directory (using tab complete and set -o vi
to make things quicker still), and start dealing with files much quicker than I could navigate a menu to get to, say, Dolphin, wait for it to load (if you use a minimal terminal, it should load basically instantaneously), and then start navigating.
And I have been avoiding installing applications through terminal because I can’t find how to properly uninstall them including all data (the fedora software center does this really easily)
Not sure I can help you there. I’ve never used Fedora. I used CentOS once for a short time, but it was a long time ago and I basically don’t remember it at all.
I have also had some trouble going further back that my user folder in the terminal I still havn’t figured out how to do that.
Like, to the parent directory of your home directory? cd ..
should always go to the parent directory of your current working directory. (/
is its own parent, I believe, so you can’t go any further up the chain than that.)
Lastly what are some “user friendly by virtiue of having few moving parts” distro’s that you recommend?
Gentoo and Arch. I’ve never used Void, but it sounds to me like Void is very minimal (has few moving parts) while also being much less of a learning curve than Gentoo and Arch.
When I say “few moving parts”, I mean, roughly speaking, fewer lines of source code. KDE (just for instance) is a huge beast. It tries to accomplish user friendliness by adding layers upon layers of abstraction, in the process obscuring what’s really going on at lower levels from the user. It… doesn’t really work. What it gains you in reduced learning curve becomes an obstacle the moment something goes wrong or you want to peek under the hood. Ubuntu (just as another example) installs tons of stuff to try to shield you from the nitty gritty details. But again, that causes more problems than it solves unless you’re dead set against ever looking under the hood for any reason.
The term “user friendly” tends to mean “my grandmother can use it without having to learn anything in the process.” In the comment about “user friendly by virtiue of having few moving parts”, I didn’t mean “user friendly” in the same sense. I don’t think “user friendly” in the more common sense id mutually exclusive with “fewer moving parts.” At least not in theory. But in practice, that does seem to be the trend.
More than anything, what leveled up my Linux knowledge was switching to Gentoo back while I was in college.
Before that, I used SuSE, and I switched specifically because I felt like I wasn’t learning anything really about Linux just by using point-and-click tools like YAST.
I’ve used Arch for the last… 7-ish years? (Though now I’m basically in the process of switching back to Gentoo. In terms of learning Linux, Arch is… close to as good as Gentoo for that purpose. Not quite as good, but pretty close.)
As for the best approach for learning, though, you know how they say the best way to learn a language is “immersion”? As in, to move to where they speak the language. In the same way, if what you’re going for is to learn, just take a dive. Install Arch over top of your current OS and don’t look back. Just commit to it.
Also, use the most minimal stuff you can. Skip KDE and use dwm. Skip the login manager and start your GUI from the command line. Don’t install a file manager and instead use Bash directly. (It’s more than capable.) Don’t install anything you can do instead with a Bash one-liner or a small Bash script. If after you’ve gotten pretty used to minimal stuff you still want something that the heavier alternatives offer, you can of course switch, but if your aim is to learn, avoid using the kind of stuff that tries to be “user friendly” by hiding all the internal implementation details from you. (Instead use the stuff that is user friendly by virtue of having so few moving parts that understanding how it works under-the-hood is trivial.)
And, don’t settle for “it’s fucked beyond repair.” If it’s fucked, google your ass off. If that doesn’t work, ask on the official Arch forums or here or wherever. (Don’t worry, they don’t bite.)
What’s your stance on North Korea?
0% chance you’re from the U.S.
(Not a bad thing. Lol.)
“You expected me to grant the letter of your wish in a way that subverted the spirit of your wish or you wouldn’t have put ‘that works how I expect it to’ on the end. I fulfilled your expectations exactly as requested. Having a 10-inch penis on your forehead was exactly the sort of result you expected given how too-good-to-be-true your stumbling onto my lamp was, was it not?”
For real. I’ve been anxiously awaiting developments, but it seems that no more developments are likely to happen until September.
SFC (“Software Freedom Conservancy”) is doing good work on a legal front that may well result in a lot more consumer electronic devices (like smart TVs) having fully FOSS OSs available.
More info at https://sfconservancy.org/copyleft-compliance/vizio.html
Remember the “Jitterbug” mobile phone made specifically for older users?
Kindof in the spirit of that.
Don’t hide things in a “start menu” or anything like that. No task bar. Just put a small number of big icons on the “desktop”. Open all applications in fullscreen. Don’t allow two applications to run at the same time. Optimally, the browser wouldn’t be as general-purpose as Firefox or Chromium or whatever. No address bar. Just links to a few bookmarked sites. In fact, no home page on the browser would be good. Just make the websites they have available to go to more icons on the GUI’s main desktop. Don’t make them right-click for anything, only left-click. But make it easy for people’s family to get at the guts, including remotely, to customize the experience for the intended user.
Too little too late. The damage is already done.
And even on that page, they’re still being assholes about Open Source (“Our use of the term ‘open source’ thus far has been not out of carelessness, but out of disdain for OSI approved licenses which nevertheless allow developers to be exploited by large corporate interests.”) while pretending what they’ve done with the FUTO license is some boon to consumer rights (“Fundamentally, our goals are to build great products that don’t abuse people, beat the tech oligopoly, and elevate the rights of programmers developing software that has source code open to public scrutiny and tinkering.”). And they’re still not dropping the effort to dilute the term “Open Source” (“The OSI, an organization with confidential charter members and large corporate sponsors, does not have any legal right to say what is and is not ‘open source’. It is arrogant of them to lay claim to the definition.”).
Also, just as an aside, as page that the words “legal right” in that last quote link to says, the OSI attempted to trademark “Open Source.” I’m not sure why FUTO seems to think the same reasons why the “Open Source” trademark was rejected won’t apply just as much to the term “Source First” (but they do seem to think that: “we will be making our own term and trademarking it.”)
Read the rest of the comments in this post. There are multiple ways he could, theoretically, and it’s not unlikely he’ll try.