How to install xclip on Centos 8? - centos8

I recently started using Centos 8 on my Workstation and there is no xsel or xclip
Is there something wrong or is it on purpose, that xclip is not available?
Here is the output of dnf repolist, maybe I'm missing some must-have repo?
repo id repo name status
AppStream CentOS-8 - AppStream 5.089
Atom Atom Editor 142
BaseOS CentOS-8 - Base 2.843
amdgpu-pro-local AMD amdgpu Pro local repository 70
docker-ce-stable Docker CE Stable - x86_64 57
*epel Extra Packages for Enterprise Linux 8 - x86_64 3.643
extras CentOS-8 - Extras 3
virtualbox Oracle Linux / RHEL / CentOS-8 / x86_64 - VirtualBox 4

You can compile from yourself:
# Obtain the sourcecode
git clone https://github.com/astrand/xclip.git
./bootstrap
./configure
make
make install
Verify that is installed:
man xclip

First Enable EPEL (Extra Packages for Enterprise Linux) repo on CentOS 8 to install extra packages such xclip.
Step 1: Install epel repo
# yum install epel-release.noarch
or
# dnf install epel-release
Step 2: Install xclip from the EPEL repo
# dnf install xclip
Last metadata expiration check: 0:06:09 ago on Mon 07 Feb 2022 10:39:39 AM IST.
Dependencies resolved.
=============================================================================================================================================================
Package Architecture Version Repository Size
=============================================================================================================================================================
Installing:
xclip x86_64 0.13-8.el8 epel 35 k
Transaction Summary
=============================================================================================================================================================
Install 1 Package

In Centos 8 while running pyperclip.copy("Hello"), I found centos 8 don't have xclip and so the package gives me error.
I have search all packages but repository of Centos8 don't have any similar packages.
I resolve this in following steps.
Install libXmu and X11 development library
sudo yum install libXmu-devel libX11-devel
Obtain the sourcecode
git clone https://github.com/astrand/xclip.git
./bootstrap
./configure
make
sudo make install
Then test install
man xclip
Now I can use pyperclip in python to use clipboard.

Related

Newer version of cmake available in CentOS 7 than in CentOS 8?

I have CentOS 7 and CentOS 8 installed on 2 VMs. Both have epel enabled.
CentOS 7:
$ cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
$ yum repolist
...
repo id repo name status
base/7/x86_64 CentOS-7 - Base 10070
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13445
extras/7/x86_64 CentOS-7 - Extras 413
updates/7/x86_64 CentOS-7 - Updates 1127
repolist: 25055
CentOS 8:
$ cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)
$ yum repolist
repo id repo name
AppStream CentOS-8 - AppStream
BaseOS CentOS-8 - Base
PowerTools CentOS-8 - PowerTools
epel Extra Packages for Enterprise Linux 8 - x86_64
epel-modular Extra Packages for Enterprise Linux Modular 8 - x86_64
extras CentOS-8 - Extras
On CentOS 7, cmake3 is available from the epel repo, and provides cmake version 3.17.
$ yum provides cmake3
...
cmake3-3.17.3-3.el7.x86_64 : Cross-platform make system
Repo : epel
On CentOS 8, cmake3 is available from the AppStream repo, and provides cmake version 3.11.
$ yum provides cmake3
...
cmake-3.11.4-7.el8.x86_64 : Cross-platform make system
Repo : #System
Matched from:
Provide : cmake3 = 3.11.4-7.el8
I tried to disable all repos except for epel, but it's still coming back with the one from AppStream (which seems counter intuitive to me - surely it should come back with nothing if I've disabled all the other repos?)
$ yum --disablerepo=* --enablerepo=epel info cmake
Last metadata expiration check: 0:21:06 ago on Fri 11 Sep 2020 09:44:08 AM UTC.
Installed Packages
Name : cmake
Version : 3.11.4
Release : 7.el8
Architecture : x86_64
Size : 24 M
Source : cmake-3.11.4-7.el8.src.rpm
Repository : #System
From repo : AppStream
Summary : Cross-platform make system
URL : http://www.cmake.org
License : BSD and MIT and zlib
Description : CMake is used to control the software compilation process using simple
: platform and compiler independent configuration files. CMake generates
: native makefiles and workspaces that can be used in the compiler
: environment of your choice. CMake is quite sophisticated: it is possible
: to support complex environments requiring system configuration, preprocessor
: generation, code generation, and template instantiation.
I searched on pkgs.org, and it certainly does seem that cmake-3.11 is the latest version available to CentOS 8.
Apart from building from source, is there any other way to obtain a newer version of cmake on CentOD 8?
The cmake: 3.11.4 version will still be listed when you run yum info because it is already installed, so disabling the AppStream repo won't affect what is shown. If you only want to show available packages (based on your enabled yum repos), you can run this instead:
yum --disablerepo=* --enablerepo=epel info cmake --available
If you want to install the latest version of CMake (or some other version), you can always download the binary distribution from the CMake download page.
Once downloaded, you can extract the package to somewhere you have access to on your machine, e.g.:
mkdir ~/cmake
tar xvzf ~/Downloads/cmake-3.18.2-Linux-x86_64.tar.gz -C ~/cmake
Finally, make sure you add the extracted bin directory to your PATH environment variable so you can run the cmake executable from the command line.

How to fix: fatal error: openssl/opensslv.h: No such file or directory in RedHat 7

I have RedHat Enterprise Linux Server 7, and I downloaded the linux kernel version 4.12.10 which I am trying to compile but when I execute the following command:
make modules
I get the following error:
scripts/sign-file.c:25:30: fatal error: openssl/opensslv.h: No such file or directory
Does anyone have an idea to fix this please ?
To fix this problem, you have to install OpenSSL development package, which is available in standard repositories of all modern Linux distributions.
To install OpenSSL development package on Debian, Ubuntu or their derivatives:
$ sudo apt-get install libssl-dev
To install OpenSSL development package on Fedora, CentOS or RHEL:
$ sudo yum install openssl-devel
Edit :
As #isapir has pointed out, for Fedora version>=22 use the DNF package manager :
dnf install openssl-devel
For Alpine Linux:
apk add openssl-dev
On CYGwin, you can install this as a typical package in the first screen. Look for
libssl-devel
for resolving this issue install:
# yum install openssl openssl-devel
and then try again to do make bzImage.

Cannot install Apache 2.4 from REMI repository

I am trying to install Apache 2.4 from the REMI repo but no matter what I try all I get is Apache 2.2
I have installed and enabled the EPEL and REMI repos:
# yum repolist enabled
repo id repo name status
base CentOS-6 - Base 6,696
epel Extra Packages for Enterprise Linux 6 - x86_64 12,358
extras CentOS-6 - Extras 64
remi Remi's RPM repository for Enterprise Linux 6 - x86_64 4,047
remi-php56 Remi's PHP 5.6 RPM repository for Enterprise Linux 6 - x86_64 417
remi-safe Safe Remi's RPM repository for Enterprise Linux 6 - x86_64 1,768
updates CentOS-6 - Updates 974
I then use:
# yum install --enablerepo=remi httpd
Have also tried:
# yum install --enablerepo=remi-php56,remi,remi-safe,epel httpd
but in both cases I get offered only Apache 2.2:
Dependencies Resolved
===============================================================================================
Package Arch Version Repository Size
===============================================================================================
Installing:
httpd x86_64 2.2.15-56.el6.centos.3 updates 834 k
Installing for dependencies:
httpd-tools x86_64 2.2.15-56.el6.centos.3 updates 79 k
Transaction Summary
===============================================================================================
Install 2 Package(s)
Total download size: 913 k
Installed size: 3.1 M
Is this ok [y/N]:
Only the updates repo is getting used and not remi.
I have checked if apache is already installed:
# httpd -v
bash: httpd: command not found
# yum remove httpd*
Package(s) httpd* available, but not installed.
No Packages marked for removal
Is there something else I am missing? How do I get the REMI repo to be used? It is enabled but for some reason not active
remi repository is mostly dedicated to PHP, and doesn't provide Apache HTTP server, but use system version instead.
Mostly because default version in base repository is well maintained, secured, and enough in most case.
Notice that an httpd24 SCL (Software Collections) is available in centos-sclo repository which is a clone of RHSCL.

SShpass not allowed with Travis CI

Context
I have an application in which, I m using unit tests and I need to continuous deliver this. I chose to use github + travis + docker.
My Docker container is an Ubuntu 12.04 with openSSL that I cant connect from outside, and I dont have any problem with this
I need, when the travis build is okay, to connect my docker container via SSH and to run a script.
Problem
Actually, I m using :
But this doesn't work at all, because sshpass is not in the whitelist. It seems that I cant you before_install command, because I m on a container based infrastructure.
NB : The port is 22, I missed it during the picture taken.
Questions
How can I do to connect my ssh container from travis to deploy my app (only run a script that git clone / git pull if the directory exists)
Is this a good way to make it like this with travis, or does it exist something else ?
EDIT :
The travis new file :
And the log
Using worker: worker-linux-968a87ce-1.bb.travis-ci.org:travis-linux-14
system_info
Build system information
Build language: node_js
Build image provisioning date and time
Wed Feb 4 18:22:50 UTC 2015
Operating System Details
Distributor ID: Ubuntu
Description: Ubuntu 12.04 LTS
Release: 12.04
Codename: precise
Linux Version
2.6.32-042stab090.5
Cookbooks Version
23bb455 https://github.com/travis-ci/travis-cookbooks/tree/23bb455
GCC version
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
LLVM version
clang version 3.4 (tags/RELEASE_34/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix
Pre-installed Ruby versions
ruby-1.9.3-p551
Pre-installed Node.js versions
v0.10.36
Pre-installed Go versions
1.4.1
Redis version
redis-server 2.8.19
riak version
2.0.2
MongoDB version
MongoDB 2.4.12
CouchDB version
couchdb 1.6.1
Neo4j version
1.9.4
Cassandra version
2.0.9
RabbitMQ Version
3.4.3
ElasticSearch version
1.4.0
Installed Sphinx versions
2.0.10
2.1.9
2.2.6
Default Sphinx version
2.2.6
Installed Firefox version
firefox 31.0esr
PhantomJS version
1.9.8
ant -version
Apache Ant(TM) version 1.8.2 compiled on December 3 2011
mvn -version
Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-14T17:29:23+00:00)
Maven home: /usr/local/maven
Java version: 1.7.0_76, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-oracle/jre
Default locale: en, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-042stab090.5", arch: "amd64", family: "unix"
git.checkout
0.26s$ git clone --depth=50 --branch=master git://myPrivateRepo/Project
Cloning into 'user/Project'...
remote: Counting objects: 1363, done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 1363 (delta 4), reused 0 (delta 0), pack-reused 1354
Receiving objects: 100% (1363/1363), 874.89 KiB | 0 bytes/s, done.
Resolving deltas: 100% (263/263), done.
Checking connectivity... done.
$ cd user/Project
$ git checkout -qf commitId
1.56s$ nvm install 0.10
######################################################################## 100.0%
Now using node v0.10.38
$ node --version
v0.10.38
$ npm --version
1.4.28
$ nvm --version
0.23.3
before_install
6.72s$ sudo apt-get install sshpass
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libgeos-3.2.2
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
sshpass
0 upgraded, 1 newly installed, 0 to remove and 102 not upgraded.
Need to get 10.5 kB of archives.
After this operation, 56.3 kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/universe sshpass amd64 1.05-1 [10.5 kB]
Fetched 10.5 kB in 0s (234 kB/s)
Selecting previously unselected package sshpass.
(Reading database ... 75363 files and directories currently installed.)
Unpacking sshpass (from .../sshpass_1.05-1_amd64.deb) ...
Processing triggers for man-db ...
Setting up sshpass (1.05-1) ...
install
1.12s$ npm install
npm WARN package.json UnitTest#0.0.0 No description
npm WARN package.json UnitTest#0.0.0 No repository field.
npm WARN package.json UnitTest#0.0.0 No README data
0.95s$ npm test
> UnitTest#0.0.0 test /home/travis/build/user/project
> node test
First test should fail: 1) First test should fail
0 passing (8ms)
1 failing
1) First test should fail:
AssertionError: true == false
+ expected - actual
-true
+false
at Context.<anonymous> (test/first.js:8:16)
The command "npm test" exited with 0.
after_success
0.91s$ sudo sshpass -p password ssh root#ip -p 7000
Done. Your build exited with 0.
sshpass can be installed in a Travis CI container by adding:
addons:
apt:
packages:
- sshpass
I see two possible solutions to your problem:
Switch to the non-container based infrastructure of Travis-CI, by adding sudo: true in your .travis file, so you will be able to install the package you need.
Ask for the addition of sshpass in the package white list. Request can be done here: https://github.com/travis-ci/travis-ci/labels/apt-whitelist
Can you use an SSH key instead of sshpass? That way you can simply use the SSH key to connect to the Docker container instead of using a password.

Unable to install kernel source in kali Debian OS

I have some issue my OS and I don't know how to handle, I have googled allot but no success, here is my problem.
I want to install Linux headers in my Kali Debian OS. I have used following commands,
$ apt-get install linux-headers-$(uname -r)
it's output,
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
linux-headers-3.18.0-kali3-amd64 : Depends: gcc-4.7 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
After I have entered following command,
$ apt-get install gcc-4.7
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
gcc-4.7 : Depends: gcc-4.7-base (= 4.7.2-5) but it is not going to be installed
Depends: cpp-4.7 (= 4.7.2-5) but it is not going to be installed
Depends: libitm1 (>= 4.7.2-5) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
I have tried some other commands as well, including following commands,
sudo apt-get -f install
sudo dpkg --configure -a
sudo apt-get -f install
sudo apt-get -u dist-upgrade
sudo apt-get -o Debug::pkgProblemResolver=yes dist-upgrade
As well as following aptitude command,
sudo aptitude install linux-headers-$(uname -r)
my system information,
$ cat /proc/version
Linux version 3.18.0-kali3-amd64 (debian-kernel#lists.debian.org) (gcc version 4.7.2 (Debian 4.7.2-5) ) #1 SMP Debian 3.18.6-1~kali2 (2015-03-02)
$ uname -mrs
Linux 3.18.0-kali3-amd64 x86_64
$ lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description: Kali GNU/Linux Kali Linux 2.0~alpha1
Release: Kali Linux 2.0~alpha1
Codename: n/a
Please guide me what's going wrong Why I am stuck with this issue, thanks.
I share what I found and works for me.
My version:
# lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description: Kali GNU/Linux Kali Linux 1.1.0
Release: 1.1.0
Codename: moto
My source list (/etc/apt/sources.list):
# Line commented out by installer because it failed to verify:
deb http://security.kali.org/ kali/updates main contrib non-free
# Line commented out by installer because it failed to verify:
deb-src http://security.kali.org/ kali/updates main contrib non-free
## Regular repositories
deb http://http.kali.org/kali kali main non-free contrib
deb http://security.kali.org/kali-security kali/updates main contrib non-free
## Source repositories
deb-src http://http.kali.org/kali kali main non-free contrib
deb-src http://security.kali.org/kali-security kali/updates main contrib non-free
and does the following:
# apt-get clean
# apt-get update
# apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
linux-headers-3.18.0-kali3-common linux-kbuild-3.18
The following NEW packages will be installed:
linux-headers-3.18.0-kali3-amd64 linux-headers-3.18.0-kali3-common linux-kbuild-3.18
0 upgraded, 3 newly installed, 0 to remove and 112 not upgraded.
Need to get 5,269 kB of archives.
After this operation, 34.7 MB of additional disk space will be used.
Do you want to continue [Y/n]?
I comment you that I had that problem because I realize mistakenly "distribution upgrade" to alpha version of Kali.
Hope this help.