Skip to content

Instantly share code, notes, and snippets.

@mogeko
Last active June 13, 2020 20:28
Show Gist options
  • Select an option

  • Save mogeko/e7e74819329fe917cfd955faa7bab98d to your computer and use it in GitHub Desktop.

Select an option

Save mogeko/e7e74819329fe917cfd955faa7bab98d to your computer and use it in GitHub Desktop.

Revisions

  1. mogeko revised this gist Jun 13, 2020. 1 changed file with 14 additions and 12 deletions.
    26 changes: 14 additions & 12 deletions README.md
    Original file line number Diff line number Diff line change
    @@ -13,29 +13,31 @@ All commands have been installed with the prefix `g`.
    If you need to use these commands with their normal names, you
    can add some `gnubin` directory to your PATH from your `~/.bashrc` or `~/.bash_profile` like:
    ```
    export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/binutils/bin:$PATH"
    export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/ed/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/findutils/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gawk/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-indent/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-tar/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-which/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/grep/libexec/gnubin:$PATH"
    ```

    Additionally, you can access their man pages with normal names if you add
    the `gnuman` directory to your MANPATH from your `~/.bashrc` or `~/.bash_profile` as well:
    ```
    export MANPATH=/usr/local/opt/coreutils/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-sed/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/binutils/share/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/ed/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/findutils/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-indent/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-tar/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-which/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/grep/libexec/gnuman:$MANPATH
    export MANPATH="/usr/local/opt/binutils/share/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/coreutils/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/ed/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/findutils/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/gawk/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/gnu-indent/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/gnu-sed/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/gnu-tar/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/gnu-which/libexec/gnuman:$MANPATH"
    export MANPATH="/usr/local/opt/grep/libexec/gnuman:$MANPATH"
    ```

    ## gdb
  2. mogeko created this gist May 3, 2020.
    50 changes: 50 additions & 0 deletions GNU_Brewfile
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,50 @@
    tap "homebrew/bundle"
    tap "homebrew/core"
    # Macro processing language
    brew "m4"
    # Bourne-Again SHell, a UNIX command interpreter
    brew "bash"
    # GNU binary tools for native development
    brew "binutils"
    # GNU File, Shell, and Text utilities
    brew "coreutils"
    # File comparison utilities
    brew "diffutils"
    # Classic UNIX line editor
    brew "ed"
    # GNU Emacs text editor
    brew "emacs"
    # Collection of GNU find, xargs, and locate
    brew "findutils"
    # GNU awk utility
    brew "gawk"
    # GNU debugger
    brew "gdb" # gdb requires further actions to make it work. See `brew info gdb`.
    # C code prettifier
    brew "gnu-indent"
    # GNU implementation of the famous stream editor
    brew "gnu-sed"
    # GNU version of the tar archiving utility
    brew "gnu-tar"
    # GNU implementation of which utility
    brew "gnu-which"
    # GNU Transport Layer Security (TLS) Library
    brew "gnutls"
    # Apply a diff file to an original
    brew "gpatch"
    # GNU grep, egrep and fgrep
    brew "grep"
    # Popular GNU data compression program
    brew "gzip"
    # Utility for directing compilation
    brew "make"
    # Free (GNU) replacement for the Pico text editor
    brew "nano"
    # Terminal multiplexer with VT100/ANSI terminal emulation
    brew "screen"
    # Executes a program periodically, showing output fullscreen
    brew "watch"
    # Display word differences between text files
    brew "wdiff"
    # Internet file retriever
    brew "wget"
    50 changes: 50 additions & 0 deletions README.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,50 @@
    ## Install

    Download file [`GNU_Brewfile`](#file-gnu_brewfile), then run:

    ```
    brew bundle --file GNU_Brewfile
    ```

    ## Configuration

    All commands have been installed with the prefix `g`.

    If you need to use these commands with their normal names, you
    can add some `gnubin` directory to your PATH from your `~/.bashrc` or `~/.bash_profile` like:
    ```
    export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/binutils/bin:$PATH"
    export PATH="/usr/local/opt/ed/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/findutils/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-indent/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-tar/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/gnu-which/libexec/gnubin:$PATH"
    export PATH="/usr/local/opt/grep/libexec/gnubin:$PATH"
    ```
    Additionally, you can access their man pages with normal names if you add
    the `gnuman` directory to your MANPATH from your `~/.bashrc` or `~/.bash_profile` as well:
    ```
    export MANPATH=/usr/local/opt/coreutils/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-sed/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/binutils/share/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/ed/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/findutils/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-indent/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-tar/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/gnu-which/libexec/gnuman:$MANPATH
    export MANPATH=/usr/local/opt/grep/libexec/gnuman:$MANPATH
    ```

    ## gdb

    gdb requires special privileges to access Mach ports.

    You will need to codesign the binary. For instructions, see [here](https://sourceware.org/gdb/wiki/BuildingOnDarwin).

    On 10.12 (Sierra) or later with SIP, you need to run this:
    ```
    echo "set startup-with-shell off" >> ~/.gdbinit
    ```