Is it bad to install x11-common on debian server? - linux

We have a server based on Debian.
I must install imagemagick for editing images.
But when I type :
apt-get install imagemagick
It tells me that the package x11-common will be installed
X11 is a package for GUI and I am on a server.
Is it dangerous ?
I don't want a gui...

I'm surprised it only loads x11-common, Imagemagick includes commands like display, that opened a window.
x11-common just contains a few config files/scripts as the package description says:
x11-common contains the filesystem infrastructure required for further installation of the X Window System in any configuration; it does not provide a full installation of clients, servers, libraries, and utilities required to run the X Window System.
There are not even any client libraries, so you will not even be able to run the gui remotely.

Related

E: Unable to locate package ea-utils | Ubuntu 18.04

I am following this tutorial. I already have .fastq files. I want to install ea-utils.
My setup is Ubuntu 18.04 bionic, via Oracle VM Virtual Box.
In terminal, I entered the command:
>>>sudo apt install ea-utils
E: Unable to locate package ea-utils
First, I installed latest Ubuntu updates via. Software Updater.
Then,
>>>sudo apt-get update
E: Some index files failed to download. They have been ignored, or old ones used instead.
Still throwing an error:
>>>sudo apt-get install ea-utils
Second command said: E: Unable to locate package ea-utils.
You cannot install it using Git-Bash. Git-Bash is not a Linux environment (apt-get is a Linux utility that can be used in a Linux environment). Git-Bash is a subset of the MSYS (or MSYS2, not sure) collection of open source tools compiled for Windows
What you can try is
build your own version of ea-utils for Windows. build guide - I will elaborate if required
check if there are any precompiled binaries for it
Expanding on building/compiling your own binaries of programs
Normally a program is written in a programming language (e.g C/C++, Java) that humans can read. These are plain text files.
That is compiled into something computers can read
This compiled file is executable on the platform which it is compiled for - ends in .exe for Windows
This executable file is distributed as a 'precompiled binary' that is copied into (usually) C:\Program Files by the installation procedure
But things change in the world of open source software
You are given the original files of code written in a programming language
You use a compiler combined with other libraries to compile it into an executable file
MinGW is a collection of tools, including the C/C++ compiler for Windows
GSL is a library that provides some other code that ea-utils depends on for the compilation of the binaries
General instructions for building
(Sorry I cannot test these. I do not use Windows any more)
Install MinGW - accepting the defaults should work fine
Install GSL - try the link that says Setup (again, accept defaults)
Unzip the file you downloaded earlier from ea-utils' GitHub
Open command prompt
cd into the unzipped folder
(based on instructions on their wiki) make
make test
Since your updated question is based on using Ubuntu 18.04 in a VM and you there is still an error, I suggest trying
sudo apt-get update
sudo apt-get install ea-utils
Commonly, software in the Linux word is distributed as "packages" - e.g ea-utils. The first command contacts Ubuntu's repositories (they serve the packages) and generates a list of all the available packages.
That should fix the error of ea-utils not being found.
Following the constant errors being thrown,
Download the .deb file 64-bit version or 32-bit version according to the virtual machine you are running. Open it inside the virtual machine, and follow the onscreen instructions.

Installing a .bundle file in Fedora linux

So I am using Ozone OS which is basically just fedora with a cool theme, and a lot less crap installed. I tried installing VMWare Horizon view client from here: https://my.vmware.com/web/vmware/details?downloadGroup=VIEWCLIENTS_LINUX_32&productId=421&rPId=7320
and then i renamed the file to vmware.bundle, when i make it runnable with:
chmod +x vmware.bundle
i ran the file using:
./vmware.bundle
this is what happens in my terminal
VMWare Horizon Client is an x86 application but you are trying to install it to an x64 Linux.
To run this installation, you may need to install 32-bit runtime libraries. Do you want to proceed? (yes/no)yes
Extracting VMware Installer...done.
but when i try going to the application menu, I can find VMware anywhere
There is really no such thing as ".bundle" files on Fedora. The only format for installable software on Fedora are RPM files.
All that this ".bundle" file appears to be, is the vendor's custom installation script, that's all. It's not any kind of a standard packaging format, of any kind.
You will be able to find a newly-installed application on your application menu only if the application correctly installed a .desktop file in the right location. If this installation script did not do so, you won't get anything in the application menu.
It is the application script's responsibility to install a .desktop file in order for the application to appear in the application menu.
try running /bin/vmware
that is the default install location

How can I run .exe file on ubuntu 12.04 machine?

In my organization C developers developed one Application and given to us as a .exe format.
If any end-user send any Http request.This .exe will be run, for this I wrote the Java code(ProcessBuilder()) and deployed in Application Server(Apache Tomcat).It's working fine.These everything was done in my local system(Windows 7).
But we are using Ubuntu 12.04 as a server.Here that .exe file is not working.
How can I fix this.
You need to install wine software if you want to run a .exe file in ubuntu .
installing the wine software in ubuntu is a simple two step process.
Type the command in the terminal
sudo apt-get update
sudo apt-get install wine1.5
Once the wine is installed, you can open any .exe file using wine .
Say this , i have a file game.exe , right click - open with - wine .
You need to install wine software if you want to run a .exe file in ubuntu . installing the wine software in ubuntu is a simple two step process. Type the command in the terminal
sudo apt-get update
sudo apt-get install wine1.5 (1.5 changes with what ever number the latest edition is)
Even better go to Ubuntu software center and install thru GUI based process
Once the wine is installed, you can open any .exe file using wine . Say this , i have a file pumpai.exe , right click - open with - wine .
And Enjoy...Its Open Source..........
Pramod Pai
You basically can't execute a windows executable on Linux (but maybe try with wine).
You should ask the source code of that C application inside your organization, and port it and compile it (with gcc -Wall -g at first) on your Linux server.
I suggest you to install Linux on your local machine (or laptop) to learn it first.

Port a debian package to YUM for CentOS

I have a project that runs on Debian and uses many packages provided from the Debian repositories.
Because of demand, I've looked into porting the project to CentOS, but found that many of the packages I require are completely missing - at least 10 dependencies would have to be compiled manually at install time on the users machine.
My question is, what is the best way to create an installer for the user's machine? Should I use automake tools (with the standard ./configure, make, make install), to compile the required libraries, or is this a non-standard approach. Note that my app doesn't actually need to be compiled since it is written in Python, so is it weird to do a "make", when you're not compiling your own app?
Should the configure script just warn the user that package X is missing, and let them handle the rest?
Should I roll my own dependency checker by runng pkg-config manually a few times for each library required, and exit if something is missing?
I'm quite new to this, so any tips to get me moving in the right direction are appreciated.
Edit: I am familiar with RPM and yum for red hat base distros, but CentOS is missing many multimedia packages that I require. An example of one of my package dependencies is "liquidsoap" which is a programmable audio engine: http://savonet.sourceforge.net/
This is available on Debian, but not Redhat/Centos
See this link on CentOS package management.
http://wiki.centos.org/PackageManagement/Yum
CentOS is redhat based and does not use .deb packages by default. However apt package management has been ported to tons of platforms, you may be able to use a port for centOS
If you use YUM whatever packages you need will be there for your application as redhat distros need all the same things that any other distro does.
EDIT: To get the details out of comments
Packages not available on the target platform either have to be built (possibly as a port) on the target platform and then shipped in the ported package (in this case YUM), or code needs to be modified and forked to use packages which already are available on the target platform. The choice depends on which is worse, or which is even possible given your constraints.

Centralized Installer

I am looking for an installer for my product. My requirement is that from one Node (Physical Machine) I should be able to install the software on multiple machines (Node). My product is a HA platform that needs to be installed on multiple Linux machines to form a cluster. Is there any installers that can do this free or paid. Currently we are developing on Linux, going forward we may need to support other Unix type OS.
Thanking you in advance
Package your product appropriately for the distribution (e.g. deb package) and use the standard management tools for the platform. Many simplicity-oriented people use
for node in $nodes; do ssh $node sudo apt-get install $package; done
and there is a host of cluster management software out there, one of which you are probably using.
I don't know if there is an "installer" the way you use in Windows machines. However you can create packages depending on your system. For Debian like systems you can create .deb packages, and for Red Hat style you can create .rpm packages.
The way the packages are created is to specify a correct installation path for files and pre-install & post-install scripts to execute when you install the files. Also you can set dependencies on your package, so that if you require some important library, the deb/rpm installer won't install your package until the required library is installed.
Hope that makes sense with my broken English:)

Resources