4 ms·
If it weren't for pacman's weird user interface (not functionality, just the UI), I might have already switched to Arch. As Ubuntu gets worse (it seems like eve
by saosebastiao 14y ago
If it weren't for pacman's weird user interface (not functionality, just the UI), I might have already switched to Arch. As Ubuntu gets worse (it seems like every day there is a new anouncement that sucks), pacman looks better and better.
- arthulia 14y agoWhat UI are you talking about? pacman is a relatively simple to use cli tool. -S to install something, -Ss to search for something -y to update the package list, and -Su to upgrade packages; that's basically four flags to memorize. Or do it all at once with -Syu.
- politician 14y agoI can't tell if you're being sarcastic. I guess that means you've won.
- deelowe 14y agoIt's simple, but the switches are rather odd. I get the point of S, Y, U etc... and then the minor options of yu etc... but it's rather arbitrary in practice. Note: -S isn't "install," it's for syncing which does all manner of things including installs, but not removals (oddly enough). It's little things like this that bother me about pacman.
- zanny 14y agoIt is also valuable to know -R and c and s to remove a package and its dependencies and dependents.
- LukeShu 14y agopacman is a little awkward, but I prefer it to apt/dpkg, which have sub-commands, each with their own flags, some of which are undocumented. pacman, on the other hand, has ALL options documented in one fairly short man page. The trick to understanding pacman is to understand how it maintains databases of packages, and what it means to "sync". There are several "databases" that pacman deals with: * "the database", (`/var/lib/pacman/local/`) The database of currently installed packages * "package databases", (`/var/lib/pacman/sync/${repo}.db`) There is one of these for each repository. It is a file that is fetched over plain http(s) from the server; it is not modified locally, only updated. The "operation" of pacman is set with a capital flag, one of "DQRSTU" (plus -V and -h for version and help). Of these, "DTU" are "low-level" (analogous to dpkg) and "QRS" are "high-level" (analogous to apt). To give a brief explanation of cover the "high-level" operations, and which databases they deal with: "Q" Queries "the database" of locally installed packages. "S" deals with "package databases", and Syncing "the database" with them; meaning it installs/updates packages that are in package databases, but not installed on the local system. "R" Removes packages "the database"; removing them from the local system. The biggest "gotcha" is that "S" deals with all operations with "package databases", not just syncing "the database" with them. Edit: formatting. I've over-done quotation marks to make it clear when precise wording matters.
- yogo 14y agoGenerally I only have to use the following: pacman -Ss (for the occasional search) pacman -Syu [pkgname] (I almost always use yu to ensure that things are always in sync) pacman -Rsun pkgname pacman -Qi pkgname pacman -Sc (used every so often) I would say those cover 99% of my interaction with pacman. I'm not sure of any other interfaces to use it so it would be interesting to know more about how you use pacman.
- LukeShu 14y agoThere are several GUI wrappers around pacman (and several wrappers to unify it with AUR), but for the most part that's it. I'd add that I'd be careful about -n on -R (don't back up configuration files when removing a package); I'd let pacman back them, then catch them in my usual `sudo find /etc -name '.pac'`.
- notatoad 14y agoI've got to say, as somebody who is very comfortable with the command line (my job is linux server admin) but has never used arch before, that sounds pretty damn obtuse.
- andrewflnr 14y agoI felt the same way, but once I actually learned it, it's pretty straightforward. Besides just installing packages, -Qs, -Ss, and -Si give me most of the information I need in a digestible way. I never did figure out how to do most of that with apt-get. After working out the kinks, I'm loving Arch on my laptop, 10-second startups and ~6 hours of battery, with basically nothing running that I didn't ask for. Working out the kinks was/is admittedly non-trivial. Read the directions. ;) Edit: OK, 18 seconds. Still pretty good.
- saosebastiao 14y agoThe idea of only running things that I decide to run is probably the most appealing thing to me about Arch/Gentoo. And I'm sure I'll figure out the user interface, but I still think it is weird. I'll probably think of maybe 5 more excuses to keep using Ubuntu before I toss in the towel and switch to Arch. Just out of curiosity, what are Arch desktop users using for servers, where the rolling-release format isn't as acceptable?
- gary4gar 14y ago<scarcasm>You know there is a nifty feature called bash aliases which is present in linux. so 'pacman -Syu' can simply be called 'upgrade'</scarcasm> But seriously, alias commands you use, no need to remember the oddities.