I installed Linux Mint 17.3 on my laptop last night (removing Windows 8.1). It's been about a day and I'm already regretting it. But maybe some of you have some tips or tricks to make things a little more accessible/easier/enjoyable, because so far just the overall experience has been pretty frustrating.

Whether I like it or not, I know I need to learn Linux on some level; it's just the way it is in web development. When I look up pretty much any tool it's the "Linux way" that's listed first, and then maybe there's a "Windows way". In any case, Linux is first. I haven' touched my VPS on DigitalOcean in months (partly because it's Linux but also partly because I haven't had the time to devote to it).

Anyway, so I decided to install Linux and then "force" myself to use it, at least a little bit, because I tend to do a little work on my laptop when I want to sit in front of the TV and have my cat in my lap at the same time (he doesn't like it when I'm on my main computer 🙂).

I wanted to try to install the main things manually (Apache, PHP, MySQL), but that proved impossible. Hours into Apache and I barely was able to get some dependency installed. Scrapped that and used XAMPP instead. Did not go down apt-get install route because I don't want to use old versions of software. And I want to play with PHP 7.

I managed to get PhpStorm installed. Had to do it a couple times because it apparently disappeared from the "start" menu (not sure what else to call that menu :p). Which is a huge dealbreaker for me when it comes to Linux. The ability to hit the Windows key and then type and search for something is invaluable, and the reason I'd choose Vista over XP 10 times out of 10. Microsoft only made it better in 7 and 8. So this being robust and useful must be a thing. I'll probably inquire in the future on how to extend or make it better.

What about permissions and prompting for password every time I want to do something? Very annoying. Any way I can just have root access, or like, enter my password as soon as I log in so I don't have to be prompted all the time? Also can't seem to do anything without having to prefix it with sudo. Want to use Git? Sudo. Composer? Sudo. Want PhpStorm to be able to operate? Better run it from the terminal with sudo. Anyway to change that? I couldn't even get PhpStorm to create its .idea folder because it didn't have permission to write to the project's directory. Can I just chmod 777 the whole file system? 🙂

Sorry, more of a rant than anything. Just frustrated at the lack of accessibility of Linux and feel restricted about everything. I am way more productive on a Windows machine, which I find ironic because people give me crap all the time for working with Windows, yet I spend hour upon hours trying to do things on a Linux machine which would take me a fraction of the time on Windows. And in the end the quality of my code and work isn't going to magically improve because I am using X operating system over Y.

    Bonesnap wrote:

    Did not go down apt-get install route because I don't want to use old versions of software. And I want to play with PHP 7.

    New versions of software may be available in unofficial apt repositories. For example, an article on DigitalOcean about How To Upgrade to PHP 7 on Ubuntu 14.04 notes that "Ondřej Surý maintains the PHP packages for Debian, and offers a PPA for PHP 7.0 on Ubuntu". Something similiar may be available for Linux Mint, given its ties with Ubuntu and Debian.

    Bonesnap wrote:

    What about permissions and prompting for password every time I want to do something? Very annoying.

    sudo is normally configured such that you are only prompted for the password once in awhile, e.g., 15 minutes. Perhaps the time frame was reduced in the interest of security, in which case you may be able to change it to something more suitable for your desired balance of convenience and security.

    Bonesnap wrote:

    Any way I can just have root access, or like, enter my password as soon as I log in so I don't have to be prompted all the time?

    Probably:

    $ sudo su -

    upon which you logout from root when done with the administrative tasks. I think that this is living life a little more dangerously, though I have heard the counterargument that this may be safer, i.e., you are more on alert because you are logged in as root. I suppose it might be true... if your alertness extends to logging out from root as soon as you are done.

    Bonesnap wrote:

    Also can't seem to do anything without having to prefix it with sudo. Want to use Git? Sudo. Composer? Sudo. Want PhpStorm to be able to operate? Better run it from the terminal with sudo. Anyway to change that? I couldn't even get PhpStorm to create its .idea folder because it didn't have permission to write to the project's directory. Can I just chmod 777 the whole file system?

    This would be wrong: installing them might require superuser privileges, but using them should not require superuser privileges. Consider git: are you even able to run this?

    $ git --version

    If you can, maybe the permission problem has to do with the directories in which you are trying to use git (and other software).

      FWIW, I gave up several years ago with actually trying to use Linux (and its GUI desktops) as the main OS on my PCs. Instead I install/run Linux VMs and only interact with them via command line terminals.

        NogDog;11053175 wrote:

        FWIW, I gave up several years ago with actually trying to use Linux (and its GUI desktops) as the main OS on my PCs. Instead I install/run Linux VMs and only interact with them via command line terminals.

        I'd concur with this --- a great way to learn what you really need to know about the 'Nixen.

        I might even use FreeBSD instead of a Linux to start with, because of the one-stop documentation (FreeBSD handbook) and Ports system (which is typically more up-to-date than most Linux Distro's repos (?)). And no, I wouldn't replace my desktop with it right away. Possibly never. While I did use a FreeBSD desktop for several years, I did it originally to learn about the X Windows System (which really should go the way of the Dodo, some say), and because of the novelty of the thing, and because security 😉

        An interesting sidenote about my FreeBSD desktop; I eventually installed both Wine and VirtualBox in order to run Windows games and certain other apps.

          I watched some great videos and I've bookmarked several channels on Youtube to check out later. Learned a lot last night, mostly about the file system. And I refreshed myself on file/directory permissions and how to change them. Already feeling better. May also reinstall Linux Mint with Xfce instead of Cinnamon. Apparently it's a lot less resource hungry than Cinnamon.

          laserlight;11053171 wrote:

          New versions of software may be available in unofficial apt repositories. For example, an article on DigitalOcean about How To Upgrade to PHP 7 on Ubuntu 14.04 notes that "Ondřej Surý maintains the PHP packages for Debian, and offers a PPA for PHP 7.0 on Ubuntu". Something similiar may be available for Linux Mint, given its ties with Ubuntu and Debian.

          This is really great info, thanks for sharing. I happened to see a thread last night on /r/php that apparently there's a big push from Debian to get PHP7 in and there are even rumours about PHP7 possibly being included in Ubuntu 16.04, maybe side-by-side with 5.6. Apparently ArchLinux has already announced they're including it. Let's cross our fingers!

          You wouldn't happen to know of a PPA for Git, would you? 1.9.1 is what's in the repository but 2.7.0 is the latest version on the website. But when you try to download it it just says to use the repository.

          laserlight;11053171 wrote:

          sudo is normally configured such that you are only prompted for the password once in awhile, e.g., 15 minutes. Perhaps the time frame was reduced in the interest of security, in which case you may be able to change it to something more suitable for your desired balance of convenience and security.

          After the new info I learned last night I have moved some stuff into my home folder, which has reduced the number of times I've had to enter my password.

          laserlight;11053171 wrote:

          This would be wrong: installing them might require superuser privileges, but using them should not require superuser privileges. Consider git: are you even able to run this?

          $ git --version

          If you can, maybe the permission problem has to do with the directories in which you are trying to use git (and other software).

          I was kinda wrong. So commands like git --version, git status, etc. would work okay, but any time I needed to create something, like git init, it would require sudo. I moved the public_html folder to my home directory so I don't have to do that anymore. It also solves the issue I had with PhpStorm when trying to write anything to the project's folder.

          NogDog;11053175 wrote:

          FWIW, I gave up several years ago with actually trying to use Linux (and its GUI desktops) as the main OS on my PCs. Instead I install/run Linux VMs and only interact with them via command line terminals.

          I really want to try to use it as a desktop OS. Not on my main computer, but I think my laptop is a good enough test bed. It's possible I may go back, but I'd like to give it an honest effort.

            Bonesnap wrote:

            You wouldn't happen to know of a PPA for Git, would you? 1.9.1 is what's in the repository but 2.7.0 is the latest version on the website.

            Unfortunately, no. I generally use the versions available in the official repository unless I specifically need something from a newer version. Coupled with my laziness to keep up with the Joneses for upgrading non-LTS distro versions, this means that I am rather behind until I upgrade to Ubuntu 16.04 LTS later this year.

            Bonesnap wrote:

            I moved the public_html folder to my home directory so I don't have to do that anymore. It also solves the issue I had with PhpStorm when trying to write anything to the project's folder.

            Yeah, this should be the right approach.

            Bonesnap wrote:

            I really want to try to use it as a desktop OS. Not on my main computer, but I think my laptop is a good enough test bed. It's possible I may go back, but I'd like to give it an honest effort.

            I originally used Ubuntu for development only, but later I figured that when I was not doing that, I was mostly using my web browser, mail client, and music/video software, so I now rarely use my Windows side of the dual boot. When I do, it is usually for Skype (I bought a Skype video recording plugin that I prefer to keep using) and games (but then often these are played in a LAN cafe for social reasons).

              Bonesnap;11053185 wrote:

              I watched some great videos and I've bookmarked several channels on Youtube to check out later. Learned a lot last night, mostly about the file system. And I refreshed myself on file/directory permissions and how to change them. Already feeling better. May also reinstall Linux Mint with Xfce instead of Cinnamon. Apparently it's a lot less resource hungry than Cinnamon.

              Glad to hear that. Re: reinstalling with XFCE; yes, XFCE is generally considered lightweight, but a reinstall in order to change the desktop environment is antithetical to the philosophy of the system IMHO. If it seems simpler, OK; but I've generally tried to avoid it where 'Nixen are concerned.

                laserlight;11053187 wrote:

                Unfortunately, no. I generally use the versions available in the official repository unless I specifically need something from a newer version. Coupled with my laziness to keep up with the Joneses for upgrading non-LTS distro versions, this means that I am rather behind until I upgrade to Ubuntu 16.04 LTS later this year.

                I looked online and found this (from Stack Overflow):

                sudo add-apt-repository ppa:git-core/ppa
                sudo apt-get update
                sudo apt-get install git
                

                So now I have 2.7.0 installed 😃.

                laserlight;11053187 wrote:

                I originally used Ubuntu for development only, but later I figured that when I was not doing that, I was mostly using my web browser, mail client, and music/video software, so I now rarely use my Windows side of the dual boot. When I do, it is usually for Skype (I bought a Skype video recording plugin that I prefer to keep using) and games (but then often these are played in a LAN cafe for social reasons).

                I rarely play games, and when I do, they tend to be old, "retro" games that can be easily played in a virtual machine. But I am very much like you in that aside from development and games, I tend to use only a handful of applications, pretty much all of which have an install on Linux or an equivalent (or at the very least can be run on a virtual machine).

                dalecosp;11053191 wrote:

                Glad to hear that. Re: reinstalling with XFCE; yes, XFCE is generally considered lightweight, but a reinstall in order to change the desktop environment is antithetical to the philosophy of the system IMHO. If it seems simpler, OK; but I've generally tried to avoid it where 'Nixen are concerned.

                Normally I would agree, but this install is only a couple days old, so there's nothing on it that I care about or a setup that I am invested in. But perhaps more importantly it gives me more practice for installing applications, packages, etc. and configuring the system. The amount I have to Google to do pretty much anything is a lot :p But things are sinking in and I am beginning to do things from memory, etc.

                Also when I was installing stuff I had no idea a) where it was installing to; and b) where I should be installing it to if I had some kind of choice. After watching some of the videos I learned the /opt/ folder is for optional software (which I guess is why XAMPP installed there). And I have the feeling that I will be learning more and more about this in the future because as of right now I don't know where things get installed when installing via apt-get, or how I can control that, etc.

                  Bonesnap;11053211 wrote:

                  Normally I would agree, but this install is only a couple days old, so there's nothing on it that I care about or a setup that I am invested in. But perhaps more importantly it gives me more practice for installing applications, packages, etc. and configuring the system. The amount I have to Google to do pretty much anything is a lot :p But things are sinking in and I am beginning to do things from memory, etc.

                  When I first got into running a linux desktop (oo about a decade ago now) I reinstalled the OS (or different lin OS) at least half a dozen times in the first 2 weeks. Now I can install, setup and customize a system in a matter of hours! While, I would never reinstall to change my desktop environment now I think reinstalling so much at the beginning helped me get a handle on all the things.

                  Bonesnap;11053211 wrote:

                  Also when I was installing stuff I had no idea a) where it was installing to; and b) where I should be installing it to if I had some kind of choice. After watching some of the videos I learned the /opt/ folder is for optional software (which I guess is why XAMPP installed there). And I have the feeling that I will be learning more and more about this in the future because as of right now I don't know where things get installed when installing via apt-get, or how I can control that, etc.

                  HA after a decade I know something about /opt/ lol! Honestly I've never cared where things install from the package manager because a) the executables are already available in my path and b) ish works, why do I care? 🙂

                    Derokorian;11053219 wrote:

                    Now I can install, setup and customize a system in a matter of hours! While, I would never reinstall to change my desktop environment now I think reinstalling so much at the beginning helped me get a handle on all the things.

                    That's the goal! I haven't reinstalled yet but I probably will sometime over the weekend. I can only read so much before I have to start doing. I tried installing Xfce manually but it wasn't what I was expecting, so I'll just download the Linux Mint with the environment included and try that out.

                    Derokorian;11053219 wrote:

                    HA after a decade I know something about /opt/ lol! Honestly I've never cared where things install from the package manager because a) the executables are already available in my path and b) ish works, why do I care? 🙂

                    I am kind of anal about this sort of thing. In Windows it's pretty simple since 99% of software is installed to one of the Program Files folders. I am also curious to know these sort of things since it will enhance my knowledge of the file system. Still not sure why something would be installed in the /opt/ directory or the /usr/ directory (which I had noobishly assumed was some kind of "user" directory). The difference isn't clear enough to me yet. Also permissions are much more restrictive in Linux whereas in Windows you can pretty much do anything you want.

                    One thing I have to give credit to Microsoft for is the start up speed of Windows 8.1. It's almost twice as fast as Linux Mint. Haven't tried Windows 10 but I hear it's just as fast.

                      Bonesnap;11053241 wrote:

                      Still not sure why something would be installed in the /opt/ directory or the /usr/ directory (which I had noobishly assumed was some kind of "user" directory).

                      No, that's pretty much what it is. Unix, Linux, Unix-like, w/e are all steeped in the historic tradition of time-sharing systems. Only root got to play around in /, the system itself owned most of /var, and the /usr partition was where all the homedirs are, and the only place a "normal user" could put any files (or delete them, horror of horrors). On the BSD's, /home is still just a symlink to /usr/home; most Linuxen have dispensed with that and just put /home in the root (and most of them don't even use separate partitions, maybe?)

                      I think "/opt/" is a SysV/Linux-ism; BSD variant more often use "/usr/local" for 3rd party software. I'm not sure what the historical path was for that. Here's a Stack Exchange discussion on /opt vs. /usr/local.

                        Bonesnap;11053241 wrote:

                        I am kind of anal about this sort of thing. In Windows it's pretty simple since 99% of software is installed to one of the Program Files folders.

                        Unless of course it goes into one of the AppData directories, which seem to have no rhyme or reason why things go into a certain one (Public/AppData vs Username/AppData and AppData/Local vs AppData/LocalLow vs AppData/Roaming).

                          5 days later
                          dalecosp;11053245 wrote:

                          No, that's pretty much what it is. Unix, Linux, Unix-like, w/e are all steeped in the historic tradition of time-sharing systems. Only root got to play around in /, the system itself owned most of /var, and the /usr partition was where all the homedirs are, and the only place a "normal user" could put any files (or delete them, horror of horrors). On the BSD's, /home is still just a symlink to /usr/home; most Linuxen have dispensed with that and just put /home in the root (and most of them don't even use separate partitions, maybe?)

                          I think "/opt/" is a SysV/Linux-ism; BSD variant more often use "/usr/local" for 3rd party software. I'm not sure what the historical path was for that. Here's a Stack Exchange discussion on /opt vs. /usr/local.

                          Hmm, interesting. The video that I watched which explained a lot of the directories in / basically stated that /usr/ is usually mistaken as the "user" folder but instead stands for Universal System Resources, or something very similar. It wasn't expanded much beyond that I can remember.

                          Derokorian;11053247 wrote:

                          Unless of course it goes into one of the AppData directories, which seem to have no rhyme or reason why things go into a certain one (Public/AppData vs Username/AppData and AppData/Local vs AppData/LocalLow vs AppData/Roaming).

                          Indeed, but I think that's rare in comparison. The only application I can think of off the top of my head that does that is Chrome. But in any case I don't have to be quite as studious with permissions when it comes to Windows. On Linux if it's not in the ~ directory then I better get ready to do some sudoing and password entering.

                            Bonesnap wrote:

                            The video that I watched which explained a lot of the directories in / basically stated that /usr/ is usually mistaken as the "user" folder but instead stands for Universal System Resources, or something very similar. It wasn't expanded much beyond that I can remember.

                            I have never heard of such a thing. As far as I know, that directory was historically an abbreviation of "user". A quick search of the Web shows that "User System Resources" is a backronym: /usr, and apparently there are other variants like "Unix System Resources" and presumably the "Universal System Resources" that you heard.

                            EDIT:
                            A little more searching brings up a video of a 1982 interview of Dennis Ritchie, Brian Kernighan, and others. At around the 13:41 mark, Brian Kernighan clearly pronounces "usr" as "user". Apparently, dmr and ken never bothered to correct him.

                            Bonesnap wrote:

                            After watching some of the videos I learned the /opt/ folder is for optional software (which I guess is why XAMPP installed there).

                            There is a case for it to be installed in /srv instead though, especially if the primary purpose of the machine is for hosting. I remember my first experience with Django in a work setting had it installed in /opt on some servers, and /srv on others. In the end, I went with /srv for new servers.

                              Write a Reply...