Giter Club home page Giter Club logo

Comments (6)

ratmav avatar ratmav commented on August 10, 2024

https://github.com/tmux-plugins/tmux-yank#linux

Will need to install xclip in order to capitalize on the tmux-yank plugin.

from dotfiles.

ratmav avatar ratmav commented on August 10, 2024

@JennHaggerty: you down to help on this, at least with older CentOS versions?

from dotfiles.

ratmav avatar ratmav commented on August 10, 2024

here's something i had to cobble together to spin up a workstation on a vps that (hopefully) has better upload speeds:

linux dotfiles buildlog

centos

  1. provision centos 7.5 droplet on digital ocean
  2. update host:
    # yum -y update && yum -y install epel-release
    # yum -y groupinstall 'Development Tools'
  3. install tmux:
    # yum -y install libevent-devel ncurses-devel
    # curl -OL https://github.com/tmux/tmux/releases/download/2.8/tmux-2.8.tar.gz
    # tar -xvf tmux-2.8.tar.gz
    # cd tmux-2.8
    # ./configure
    # make
    # make install
    # cd ../
    # rm -rf tmux-2.8*
  4. install nvim:
    # yum -y install ninja-build libtool autoconf automake cmake gcc gcc-c++ make pkgconfig unzip
    # git clone https://github.com/neovim/neovim.git
    # cd neovim
    # git checkout v0.3.1
    # make
    # make install
    # cd ../
    # rm -rf neovim*
  5. create admin user:
    # adduser username
    # passwd username
    # usermod -aG wheel username
  6. configure ssh access for admin user:
    # su username
    $ mkdir -p ~/.ssh
    $ echo public_key_string >> ~/.ssh/authorized_keys
    $ chmod -R go= ~/.ssh
  7. symlink nvim config and tmux config:
    $ git clone https://github.com/ratmav/dotfiles.git
    $ ln -s ~/dotfiles/.gitignore_global ~/.gitignore_global
    $ ln -s ~/dotfiles/.tmux.conf ~/.tmux.conf
    $ mkdir -p ~/.config/nvim
    $ ln -s ~/dotfiles/init.vim ~/.config/nvim/init.vim
  8. install vim-plug:
    $ curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs -s \
        https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
  9. install tpm:
    $ mkdir -p ~/.tmux/plugins
    $ git clone -q https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
  10. init nvim and tmux:
  • open nvim, run :PlugInstall, then quit.
  • open tmux, press Prefix (Ctrl-T), then Shift-i (capital "I").
  1. copy the following into ~/.bash_profile:
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

export PS1="[\u@\h \W]\\$ "

# Force dircolors, etc.
export CLICOLOR=1

# pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)";

# load miscellaneous environment variables if needed.
if [ -f ~/.misc_envars ]; then
    . ~/.misc_envars
fi
  1. install pyenv and pyvirtualenv:
$ sudo yum -y install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
     openssl-devel xz xz-devel libffi-devel
$ source ~/.bash_profile  # will complain about no virtualenv. it's ok.
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
$ git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
$ source ~/.bash_profile  # shouldn't complain.

TODO

useful for local and remove (vnc over ssh for tablet, etc.) workstations:

  • port steps 1-7 to fedora and dnf.
  • install node-stable
  • install go
  • install openbox, etc.
  • install brave

notes

ssh agent forwarding (to keep local private keys off the box, think thin client has keys, remote host is workstation):

$ ssh -iA ~/.ssh/private_key user@host

from dotfiles.

ratmav avatar ratmav commented on August 10, 2024

centos stream is a thing; might be worth targeting v. fedora, which can have immature driver code.

from dotfiles.

ratmav avatar ratmav commented on August 10, 2024

also, just use guake until the neovim/libvterm terminal reflow issue is sorted.

from dotfiles.

ratmav avatar ratmav commented on August 10, 2024

there really isn't a ton of porting to do here; bash is bash...enough.

from dotfiles.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.