Testing installation script on Linux - bash

I'm writing a Bash script that sets up a Drupal development environment for people using Ubuntu. To test this out I've installed a fresh copy of Ubuntu in VirtualBox and am constantly using the snapshot feature to get back my fresh install after every run of the script.
Currently however my script is re-downloading all the packages that need to be installed every time I run the script. Is there a way I can get apt-get to install these packages from local storage?
Perhaps downloading them, but not installing them at once. Taking a snapshot then, and then usage of apt-get that will use the local packages that were downloaded.
How would I go about doing this? Is there perhaps some apt-get magic that will do the trick?

apt-get --download-only install should do the trick.
Then make the snapshot, then run apt-get install again without --download-only.

Related

installing software with BASH

I'm new to CLI/BASH and I've got used to the basic commands. I now want to get used to installing software on a server, such as nodejs, git etc.
Is there an software or a way I can practice BASH commands such as installing on a server without actually installing? I want to improve my skills. Is there a dummy server software or something like that?
Perhaps you should look into virtualising a machine. Then you can install whatever software you want.
www.virtualbox.org
or www.vmware.com
Either that or you can always uninstall stuff after using it apt:
apt-get --purge remove <package>
apt-get autoremove --purge
(That will remove all the package and all dependencies)
I don't think there is a 'dummy server' though ;) Virtual machines are definitely your friend here though.

How can I check for daily updates for Ubuntu 16.04 via command line?

I do not know how to check for this via command line. I do know that you can do this for through the GUI; however, I want to implement this in my script. Anyone know how to do this? (I haven't found anything about this).
Ubuntu updates are managed through the apt package manager.
If you're looking to run daily updates you'll want to do something like:
sudo apt update # updates apt packages index
sudo apt upgrade # runs upgrades on all packages

Installing TeamViewer 13 on Debian requires many dependencies

I'm trying to install TeamViewer by going to their website and downloading the latest version. However, when I open a terminal, navigate to the folder, and enter
sudo dpkg -i teamviewer_13.0.6634_amd64.deb
I get a message that certain dependencies are missing, including qtdeclarative5-qtquick2-plugin. I then installed that, re-ran the install, and there are many other missing dependencies, so I try to just run
sudo apt install qtdeclarative5-*
and this tells me that several dependencies from qml are needed, so I run
sudo apt install qml-module-*
and this again tells me I first need other missing dependencies, and at this point I feel like I am in an endless maze. Is there any efficient way of getting the dependencies that I need? Or am I supposed to be doing something completely different to install TeamViewer? I'm running Linux Mint 18.3 Cinnamon.
Why not use VNC?
This is a question more relevant for ServerFault, Stack Overflow's sister site for IT.

apt-get not working in Cygwin

I'm something of a Cygwin newbie, so that might be the problem, but I'm trying to install a package using apt-get and it's telling me there's no such command. I installed it on Windows 7.
The best I got from searching other questions here and across the net was that you need to install something specific (or run the setup file to update) when initially installing, but it's not clear to me what I need to install or run or whatever.
How do I install or update my cygwin to be able to use apt-get or, alternatively, how would I install packages with the basic, default installation of Cygwin that I already have?
Thank you.
You can use this : apt-cyg
It works just like apt-get in terms of command line arguments, but you will be using apt-cyg instead.
Refer https://github.com/transcode-open/apt-cyg It did helped me.
To install apt-cyg package.
Cygwin's official installer is setup.exe. This is the "proper" way to install Cygwin packages. There's a project called cyg-apt but it's not officially part of Cygwin.

SmartGit Installation and Usage on Ubuntu

I have downloaded latest SmartGit installation and each time I want to use it I need to run script smartgit.sh from SmartGit bin directory, this process requires the same repository setup every time.
What it correct way of installing SmartGit on Ubuntu? Thus I can have normal icon and run the program from state of previous usage, without configuring repositories every time.
Thanks.
You can add a PPA that provides a relatively current version of SmartGit(as well as SmartGitHg, the predecessor of SmartGit).
To add the PPA run:
sudo add-apt-repository ppa:eugenesan/ppa
sudo apt-get update
To install smartgit (after adding the PPA) run:
sudo apt-get install smartgit
To install smartgithg (after adding the PPA) run:
sudo apt-get install smartgithg
This should add a menu option for you
For more information, see Eugene San PPA.
This repository contains collection of customized, updated, ported and backported packages for two last LTS releases and latest pre-LTS release
What it correct way of installing SmartGit on Ubuntu? Thus I can have
normal icon
In smartgit/bin folder, there's a shell script waiting for you: add-menuitem.sh. It does just that.
Now on the Smartgit webpage (I don't know since when) there is the possibility to download directly the .deb package. Once installed, it will upgrade automagically itself when a new version is released.
Seems a bit too late, but there is a PPA repository with SmartGit, enjoy! =)

Resources