General development tools setup notes about tools like: git, p4merge, eclipse, cygwin, etc.
Last Updated: December 31, 2018 by Pepe Sandoval
If you find the information in this page useful and want to show your support, you can make a donation
Use PayPal
This will help me create more stuff and fix the existent content...
atom
sudo dpkg -i ~/Downloads/atom-amd64.deb
keymap
file'.editor': 'shift-ctrl-i': 'window:toggle-invisibles
p4merge
sudo tar --no-same-owner --extract --ungzip --file ~/Downloads/p4v.tgz --directory /opt
sudo ln --symbolic /opt/p4v-.../bin/p4merge /usr/bin/p4merge
The ... symbolize the p4v version, use the appropriate one.
git
sudo apt-get install git
~/.gitconfig
add:[user] email = j_sandoval_chavez@hotmail.com name = Jose Manuel Sandoval Chavez [merge] tool = p4merge [mergetool] prompt = false [diff] tool = p4merge [difftool] prompt = false [core] editor = atom --wait
g++
sudo apt-get install g++
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-5 g++-5
pandoc
apt-get
sudo apt-get install pandoc
.deb
packagewget https://github.com/jgm/pandoc/releases/download/1.17.2/pandoc-1.17.2-1-amd64.deb
sudo dpkg -i pandoc-1.17.2-1-amd64.deb
pandoc --standalone -f markdown_github -t html md_input.md -o html_output.html
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
openjdk-<ver_num>-jdk
format. Example:sudo apt-get install openjdk-8-jdk
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
oracle-java<ver_num>-installer
format. Example:sudo apt-get install oracle-java8-installer
java -version
sudo update-alternatives --config java
sudo update-alternatives --config javac
This allows you to edit files that are on an external server on eclipse locally to be automatically uploaded
Get tar from eclipse download page
Change to the directory you download the tar.gz file and untar it into /opt
folder
sudo tar -zxvf eclipse-cpp-mars-1-linux-gtk-x86_64.tar.gz -C /opt/
Create eclipse.desktop file executing the following command:
sudo vim /usr/share/applications/eclipse.desktop
Put the following contents on the eclipse.desktop file:
[Desktop Entry]
Name=Eclipse
Type=Application
Exec=/opt/eclipse/eclipse
Terminal=false
Icon=/opt/eclipse/icon.xpm
Comment=Integrated Development Environment
NoDisplay=false
Categories=Development;IDE;
Name[en]=Eclipse
Install desktop file executing the following command
sudo desktop-file-install /usr/share/applications/eclipse.desktop
/usr/local/bin
sudo ln -s /opt/eclipse/eclipse /usr/local/bin/eclipse
.bashrc
export JAVA_HOME=/cygdrive/c/Program\ Files/Java/<jdh_version_here>/
export PATH=$PATH:$JAVA_HOME/jre/bin:$JAVA_HOME/bin
As an alternative to work with files on a server you can set up Notepad++ to automatically upload files to a server so you can edit them and work on Notepad++ on Windows and they can be automatically uploaded to a server.
`ssh-keygen -t rsa`
cat id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
If you already have a key you can skip the first command
Copy the private key file (id_rsa file generated in the Linux Server) to your Windows machine
I used F-Secure SHH File transfer program to connect to the server and copy the file to my Windows machine. The file is located in your home in the hidden folder ~/.ssh (in F-secure enable the hidden files option in the menu: View-> Show Hidden Files)
In windows use puttygen to convert the private key to the format needed by Notepad++
If you used a passphrase when generating the key with the
ssh-keygen -t rsa
command, puttygen may ask for it
sudo apt-get install linux-headers-$(uname -r)
vbossf
group if you have folder permissions errorsudo usermod -aG vboxsf $(whoami)
sudo adduser $(whoami) vboxsf
We install this so full-screen mode and shared clipboard/copy-paste can work. Virtual machine needs a restsart so this can take effect.
/home
directory (use cd ~
)ls -a
or ls -lrfa
to find the .xinitrc.user file. We need to edit this file.case Linux* :
/usr/bin/X11/gnome
#/usr/intc/bin/fvwm2
#twm
In this example we are selecting gnome and commenting fvwm2
gksu eclipse
/etc/ssh/sshd_config
make sure to set Port (other than port 22), Host Keys, Password Auth... for example it may look like this:# $OpenBSD: sshd_config,v 1.101 2017/03/14 07:19:07 djm Exp $
# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options override the
# default value.
Port 2222
#AddressFamily any
ListenAddress 0.0.0.0
#ListenAddress ::
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
# Ciphers and keying
#RekeyLimit default none
# Logging
SyslogFacility AUTH
LogLevel INFO
# Authentication:
LoginGraceTime 2m
PermitRootLogin prohibit-password
StrictModes yes
MaxAuthTries 4
#MaxSessions 10
PubkeyAuthentication yes
# Expect .ssh/authorized_keys2 to be disregarded by default in future.
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
#AuthorizedPrincipalsFile none
#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody
# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
IgnoreRhosts yes
# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication yes
PermitEmptyPasswords no
# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no
# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no
# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no
# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication. Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.
UsePAM yes
#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no
#PrintLastLog yes
#TCPKeepAlive yes
#UseLogin no
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none
# no default banner path
#Banner none
# Allow client to pass locale environment variables
AcceptEnv LANG LC_*
# override default of no subsystems
Subsystem sftp /usr/lib/openssh/sftp-server
# Example of overriding settings on a per-user basis
#Match User anoncvs
# X11Forwarding no
# AllowTcpForwarding no
# PermitTTY no
# ForceCommand cvs server
sudo ssh-keygen -A
sudo service ssh --full-restart
sudo systemctl enable ssh
or manually restarting every timeIf you find the information in this page useful and want to show your support, you can make a donation
Use PayPal
This will help me create more stuff and fix the existent content...