Skip to content

syjung6967/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

Use at your own risk.

The dotfiles needs aid of Devbox to isolate development environment and to reduce onboarding time.

  • Devbox leverages Nixpkgs as package collection.
    • Native Nix is not intuitive for me and it requires too much configuration.

The dotfiles do not specify a desktop environment and window manager becuase none is compatible with all operating systems (WSL, Mac OS, Linux, BSD).

For the same reason, the dotfiles do not specify a terminal emulator.

Installation

Check Git is set up on your machine before installation.

Run bootstrap first.

# Install `bash` and `bash-completion`.

# Install Devbox.
curl -fsSL https://get.jetify.com/devbox | bash

# Make shell to use global profile.
echo 'eval "$(devbox global shellenv --init-hook)"' < ~/.bashrc

# Pull global config.
#
# WARN: existing global profile on local will be removed.
devbox global pull <repo>

The dotfiles is located on $DEVBOX_PROJECT_ROOT.

Add the scripts to bashrc for using the dotfiles.

eval "$(devbox global shellenv --init-hook)"

. $DEVBOX_PROJECT_ROOT/.config/bash_completion

Update dotfiles

Run devbox global push <repo> to update the dotfiles same as local.

Packages

Version control system

  • git

SSH client

  • openssh
    • dropbear could be a good replacement but I do not prefer it due to lack of some OpenSSH compatibility.

Security token

Text processor

Pager

  • delta

Language support

  • Ctags
    • universal-ctags
  • Shell scripts
    • shellcheck
  • C/C++/Obj-C
    • clang
  • Node.js
    • nodejs: for running LSP server
  • Go
    • go_1_24
    • gopls
    • goimports-reviser
  • Rust
    • rustc
    • cargo
    • rust-analyzer
  • Solidity
    • foundry
    • solc-select
  • Cross compile
    • llvm
    • lld
    • clang-tools

Terminal multiplexer

  • tmux

Text editor

  • neovim
    • helix could be a good replacement but I do not prefer it due to lack of plugin system.

Process viewer

  • htop
    • htop can replace pstree by using tree view (press F5 key).
    • For more process details, use ps.

File manager

  • None (use Netrw in nvim)

Periodic monitoring

  • viddy
    • Use viddy to support paging and time machine mode.
    • For tracking file changes in real-time, use less +F or tail -f.

Communication protocol

  • websocat
  • grpcurl

Parallel gzip (de)compression

  • pigz

About

Collection of user-specific application configuration

Topics

Resources

License

Stars

Watchers

Forks

Contributors