Skip to content

Commit

Permalink
feat: Init
Browse files Browse the repository at this point in the history
  • Loading branch information
Dustin Blackman committed Nov 6, 2023
1 parent 0f77da0 commit f2216d9
Show file tree
Hide file tree
Showing 74 changed files with 7,103 additions and 3 deletions.
Binary file added .DS_Store
Binary file not shown.
5 changes: 5 additions & 0 deletions .cargo-husky/hooks/commit-msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/usr/bin/env bash

set -e

cargo bin committed --fixup --wip --commit-file $1
13 changes: 13 additions & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[alias]
binstall = ["bin", "cargo-binstall"]
bundle-licenses = ["bin", "cargo-bundle-licenses"]
cmd = ["bin", "cargo-cmd"]
deny = ["bin", "cargo-deny"]
gha = ["bin", "cargo-gha"]
insta = ["bin", "cargo-insta"]
llvm-cov = ["bin", "cargo-llvm-cov"]
nextest = ["bin", "cargo-nextest"]
watch = ["bin", "cargo-watch"]
xwin = ["bin", "cargo-xwin"]
zigbuild = ["bin", "cargo-zigbuild"]
xtask = ["run", "-p", "xtask", "--"]
11 changes: 11 additions & 0 deletions .dprint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"indentWidth": 2,
"lineWidth": 160,
"includes": ["**/*.{md,toml,yaml,json}"],
"excludes": [".bin/**", ".git/**", "target/**"],
"plugins": [
"https://github.com/dprint/dprint-plugin-markdown/releases/download/0.14.0/plugin.wasm",
"https://github.com/dprint/dprint-plugin-toml/releases/download/0.5.4/plugin.wasm",
"https://plugins.dprint.dev/prettier-0.27.0.json@3557a62b4507c55a47d8cde0683195b14d13c41dda66d0f0b0e111aed107e2fe"
]
}
Binary file added .github/banner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
36 changes: 36 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
on: [push, pull_request]

name: ci

jobs:
build_and_test:
name: oatmeal
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy
- uses: Swatinem/rust-cache@v2
with:
cache-directories: ".bin"

- name: Install deps
run: |
git submodule update --init --recursive
cargo install cargo-run-bin
cargo binstall --help >/dev/null
- name: Setup nightly
run: cargo cmd setup-nightly
- name: Lint
run: cargo cmd lint
- name: Test
run: cargo cmd test-coverage-lcov

- name: Coveralls
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: ./lcov.info
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
target/
.bin/
.gha/
completions/
themes/
THIRDPARTY.json
THIRDPARTY.md
122 changes: 122 additions & 0 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
project_name: oatmeal
builds:
- main: ./tools/goreleaser.go
goos:
- darwin
- linux
- windows
goarch:
- amd64
- arm64
ignore:
- goos: windows
goarch: arm64
hooks:
post: ./tools/goreleaser-dist.sh {{ .Target }}
checksum:
name_template: "checksums.txt"
snapshot:
name_template: "{{ .Tag }}-next"
archives:
- format_overrides:
- goos: windows
format: zip
files:
- completions/*
- LICENSE
- THIRDPARTY.md

signs:
- artifacts: checksum
args: ["-u", "6A34CFEE77FE8257C3BB92FE24C3FC5D6987904B", "--output", "${signature}", "--detach-sign", "${artifact}"]

brews:
- tap:
owner: dustinblackman
name: homebrew-tap
folder: Formula
homepage: https://github.com/dustinblackman/oatmeal
description: Terminal UI to chat with large language models (LLM) using backends such as Ollama, and direct integrations with your favourite editor like Neovim!
test: |
system "#{bin}/oatmeal --version"
install: |
# Install oatmeal
bin.install "oatmeal"
# Install shell completions
output = Utils.safe_popen_read("#{bin}/oatmeal", "completion", "-s", "bash")
(bash_completion/"oatmeal").write output
output = Utils.safe_popen_read("#{bin}/oatmeal", "completion", "-s", "zsh")
(zsh_completion/"_oatmeal").write output
output = Utils.safe_popen_read("#{bin}/oatmeal", "completion", "-s", "fish")
(fish_completion/"oatmeal.fish").write output
scoop:
bucket:
owner: dustinblackman
name: scoop-bucket
homepage: https://github.com/dustinblackman/oatmeal
description: Terminal UI to chat with large language models (LLM) using backends such as Ollama, and direct integrations with your favourite editor like Neovim!
license: MIT

nfpms:
- homepage: https://github.com/dustinblackman/oatmeal
description: Terminal UI to chat with large language models (LLM) using backends such as Ollama, and direct integrations with your favourite editor like Neovim!
maintainer: Dustin Blackman
vendor: Dustin Blackman
formats:
- deb
- rpm
contents:
- src: ./completions/oatmeal.bash
dst: /usr/share/bash-completion/completions/oatmeal
file_info:
mode: 0644
- src: ./completions/oatmeal.fish
dst: /usr/share/fish/completions/oatmeal.fish
file_info:
mode: 0644
- src: ./completions/oatmeal.zsh
dst: /usr/share/zsh/vendor-completions/_oatmeal
file_info:
mode: 0644
- src: ./LICENSE
dst: /usr/share/doc/oatmeal/copyright/LICENSE
file_info:
mode: 0644
- src: ./THIRDPARTY.md
dst: /usr/share/doc/oatmeal/copyright/THIRDPARTY.md
file_info:
mode: 0644

aurs:
- name: oatmeal-bin
homepage: https://github.com/dustinblackman/oatmeal
description: Terminal UI to chat with large language models (LLM) using backends such as Ollama, and direct integrations with your favourite editor like Neovim!
maintainers:
- "Dustin Blackman"
contributors:
- "Dustin Blackman"
license: "MIT"
private_key: "{{ .Env.AUR_KEY }}"
git_url: "ssh://[email protected]/oatmeal-bin.git"
package: |-
# bin
install -Dm755 "./oatmeal" "${pkgdir}/usr/bin/oatmeal"
# license
install -Dm644 "./LICENSE" "${pkgdir}/usr/share/licenses/oatmeal/LICENSE"
install -Dm644 "./THIRDPARTY.md" "${pkgdir}/usr/share/licenses/oatmeal/THIRDPARTY.md"
# completions
mkdir -p "${pkgdir}/usr/share/bash-completion/completions/"
mkdir -p "${pkgdir}/usr/share/zsh/site-functions/"
mkdir -p "${pkgdir}/usr/share/fish/vendor_completions.d/"
install -Dm644 "./completions/oatmeal.bash" "${pkgdir}/usr/share/bash-completion/completions/oatmeal"
install -Dm644 "./completions/oatmeal.zsh" "${pkgdir}/usr/share/zsh/site-functions/_oatmeal"
install -Dm644 "./completions/oatmeal.fish" "${pkgdir}/usr/share/fish/vendor_completions.d/oatmeal.fish"
changelog:
use: github-native
2 changes: 2 additions & 0 deletions .insta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
test:
runner: nextest
7 changes: 7 additions & 0 deletions .rustfmt.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
edition = "2021"
force_multiline_blocks = true
group_imports = "StdExternalCrate"
imports_granularity = "Item"
imports_layout = "HorizontalVertical"
normalize_comments = true
wrap_comments = true
Loading

0 comments on commit f2216d9

Please sign in to comment.