Skip to content
Open

open #213

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
850b857
Complete domain automation with generated solutions and live status
cashpilotthrive-hue Feb 13, 2026
4a2a868
Initial plan
Copilot Feb 16, 2026
940b59c
Add complete personal Linux system setup with scripts and dotfiles
Copilot Feb 16, 2026
0245e46
Add .gitignore, LICENSE, and quick install script
Copilot Feb 16, 2026
637ac44
Add workflow preview documentation
Copilot Feb 16, 2026
4a324c5
Fix code review issues: make aliases cross-distro, pin docker-compose…
Copilot Feb 16, 2026
90f6a7f
Fix security issue: add explicit GITHUB_TOKEN permissions to workflow
Copilot Feb 16, 2026
6aacd71
Add comprehensive project completion summary
Copilot Feb 16, 2026
14d58f8
Merge pull request #35
cashpilotthrive-hue Feb 16, 2026
45f8edd
Add internal network scan report
cashpilotthrive-hue Feb 28, 2026
525bd3f
Merge pull request #80 from cashpilotthrive-hue/codex/perform-interna…
cashpilotthrive-hue Feb 28, 2026
259501c
Close pull request #75
cashpilotthrive-hue Mar 1, 2026
79c7423
Address all Copilot code review suggestions
cashpilotthrive-hue Mar 1, 2026
5175024
updae to dependant
cashpilotthrive-hue Mar 1, 2026
79b0221
Add GitHub-driven revenue tooling automation setup
cashpilotthrive-hue Mar 6, 2026
e2f9494
Merge pull request #115 from cashpilotthrive-hue/codex/configure-reve…
cashpilotthrive-hue Mar 6, 2026
c9b4786
Initial plan
Copilot Mar 6, 2026
9080ca4
Add all GitHub community health files, templates, and configurations
Copilot Mar 6, 2026
516cc7a
Merge pull request #118 from cashpilotthrive-hue/copilot/setup-all-en…
cashpilotthrive-hue Mar 6, 2026
ad9a90e
⚡ Bolt: idempotent package installation
cashpilotthrive-hue Mar 11, 2026
fa99cb9
⚡ Bolt: idempotent package installation and CI infrastructure stability
cashpilotthrive-hue Mar 11, 2026
0a33fb9
Merge pull request #144 from cashpilotthrive-hue/bolt/idempotent-pkg-…
cashpilotthrive-hue Mar 11, 2026
00a590c
⚡ Bolt: batch package queries in install-packages.sh
cashpilotthrive-hue Mar 17, 2026
3463eb7
⚡ Bolt: batch package queries in install-packages.sh
cashpilotthrive-hue Mar 17, 2026
b4d12e3
⚡ Bolt: batch package queries in install-packages.sh
cashpilotthrive-hue Mar 17, 2026
4ffdfe9
⚡ Bolt: batch package queries in install-packages.sh
cashpilotthrive-hue Mar 17, 2026
b0bfdcb
Merge pull request #28 from cashpilotthrive-hue/codex/create-void-usa…
cashpilotthrive-hue Mar 17, 2026
49975ed
Merge pull request #157 from cashpilotthrive-hue/bolt-batch-apt-queri…
cashpilotthrive-hue Mar 17, 2026
977550b
⚡ Bolt: [improvement]
cashpilotthrive-hue Mar 20, 2026
75556ac
⚡ Bolt: [improvement]
cashpilotthrive-hue Mar 20, 2026
f62f5e9
Merge pull request #164 from cashpilotthrive-hue/bolt-optimize-system…
cashpilotthrive-hue Mar 20, 2026
1d6d7e5
Create codeql.yml
cashpilotthrive-hue Apr 6, 2026
cee72a8
Merge pull request #200 from cashpilotthrive-hue/cashpilotthrive-hue-…
cashpilotthrive-hue Apr 6, 2026
128e084
Update issue templates
cashpilotthrive-hue Apr 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
root = true

[*]
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
charset = utf-8

[*.sh]
indent_style = space
indent_size = 4

[*.{yml,yaml}]
indent_style = space
indent_size = 2

[*.md]
trim_trailing_whitespace = false

[Makefile]
indent_style = tab
1 change: 1 addition & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
github: [cashpilotthrive-hue]
41 changes: 41 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
name: Bug Report
about: Report a problem with the setup scripts or configuration
title: "[Bug] "
labels: bug
assignees: ''

---

## Description

A clear description of the bug.

## Environment

- **Linux Distribution**: (e.g., Ubuntu 22.04, Fedora 39, Arch Linux)
- **Package Manager**: (apt / dnf / pacman)
- **Shell**: (e.g., bash 5.1)

## Steps to Reproduce

1. Run `./setup.sh`
2. ...

## Expected Behavior

What you expected to happen.

## Actual Behavior

What actually happened.

## Logs / Error Output

```
Paste relevant output here
```

## Additional Context

Any other information that may help diagnose the issue.
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Security Issues
url: https://hackerone.com/github
about: Please report security vulnerabilities through the GitHub Security Bug Bounty.
- name: GitHub Actions Questions
url: https://github.community/c/code-to-cloud/github-actions
about: Ask questions about GitHub Actions on the Community Forum.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
39 changes: 39 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Copilot Instructions

## Project Overview

This is a `.github` organization repository that provides default community health files, GitHub Actions workflows, and Linux system setup scripts for the `cashpilotthrive-hue` organization.

## Repository Structure

- `setup.sh` / `install.sh` — Main setup and quick-install entry points
- `scripts/` — Modular shell scripts for packages, dev tools, dotfiles, and system config
- `dotfiles/` — Shell, editor, and terminal configuration files
- `config/` — Package lists and other configuration data
- `.github/workflows/` — CI/CD and automation workflows

## Coding Conventions

- All shell scripts use `#!/bin/bash` and `set -e`
- Variables are quoted: `"$VAR"` not `$VAR`
- Scripts support multiple package managers: apt (Debian/Ubuntu), dnf (Fedora), pacman (Arch)
- Idempotent operations — scripts check before acting (e.g., `command -v` before installing)
- Colored output uses ANSI escape codes via variables (`$RED`, `$GREEN`, `$YELLOW`, `$NC`)

## Workflow Conventions

- Workflows use `permissions: contents: read` (least privilege)
- Use `actions/checkout@v3` for repository checkout
- Keep workflow `on:` triggers explicit and minimal

## Testing

- Shell script syntax is validated with `bash -n`
- Repository structure is validated in CI (directories, required files)
- Full installation testing requires a real Linux system and is not run in CI

## Security

- Never commit secrets or credentials
- Workflow permissions should follow least privilege
- Review third-party actions before use
10 changes: 10 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
labels:
- "dependencies"
commit-message:
prefix: "ci"
18 changes: 18 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
## Description

A brief summary of the changes in this pull request.

## Type of Change

- [ ] Bug fix
- [ ] New feature
- [ ] Documentation update
- [ ] Configuration change
- [ ] Other (describe below)

## Checklist

- [ ] I have tested the changes locally
- [ ] Shell scripts pass syntax validation (`bash -n`)
- [ ] Documentation has been updated (if applicable)
- [ ] No secrets or sensitive data are included
1 change: 1 addition & 0 deletions .github/pull_requests_closed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Closed pull request #75 with comment: Closing as duplicate — superseded by the consolidated idempotency work. Please use the latest open PR for this feature.
103 changes: 103 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL Advanced"

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
- cron: '23 0 * * 2'

jobs:
analyze:
name: Analyze (${{ matrix.language }})
# Runner size impacts CodeQL analysis time. To learn more, please see:
# - https://gh.io/recommended-hardware-resources-for-running-codeql
# - https://gh.io/supported-runners-and-hardware-resources
# - https://gh.io/using-larger-runners (GitHub.com only)
# Consider using larger runners or machines with greater resources for possible analysis time improvements.
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
permissions:
# required for all workflows
security-events: write

# required to fetch internal or private CodeQL packs
packages: read

# only required for workflows in private repositories
actions: read
contents: read

strategy:
fail-fast: false
matrix:
include:
- language: actions
build-mode: none
- language: javascript-typescript
build-mode: none
- language: python
build-mode: none
# CodeQL supports the following values keywords for 'language': 'actions', 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'rust', 'swift'
# Use `c-cpp` to analyze code written in C, C++ or both
# Use 'java-kotlin' to analyze code written in Java, Kotlin or both
# Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
# To learn more about changing the languages that are analyzed or customizing the build mode for your analysis,
# see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.
# If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
steps:
- name: Checkout repository
uses: actions/checkout@v4

# Add any setup steps before running the `github/codeql-action/init` action.
# This includes steps like installing compilers or runtimes (`actions/setup-node`
# or others). This is typically only required for manual builds.
# - name: Setup runtime (example)
# uses: actions/setup-example@v1

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.

# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality

# If the analyze step fails for one of the languages you are analyzing with
# "We were unable to automatically build your code", modify the matrix above
# to set the build mode to "manual" for that language. Then modify this step
# to build your code.
# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
- name: Run manual build steps
if: matrix.build-mode == 'manual'
shell: bash
run: |
echo 'If you are using a "manual" build mode for one or more of the' \
'languages you are analyzing, replace this with the commands to build' \
'your code, for example:'
echo ' make bootstrap'
echo ' make release'
exit 1

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
with:
category: "/language:${{matrix.language}}"
100 changes: 100 additions & 0 deletions .github/workflows/domain-realtime.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
name: Domain Realtime Test + Deploy

on:
push:
branches: ["**"]
pull_request:
schedule:
- cron: "*/5 * * * *"
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: domain-realtime
cancel-in-progress: true

jobs:
generate-solutions:
runs-on: ubuntu-latest
strategy:
matrix:
provider: [cloudflare, route53, namecheap]
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Generate provider snippet
run: |
mkdir -p generated/providers
cat > "generated/providers/${{ matrix.provider }}.txt" <<TXT
provider=${{ matrix.provider }}
domain=$(tr -d '\r\n' < CNAME)
target=<org-or-user>.github.io
TXT
- uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: dns-solution-${{ matrix.provider }}
path: generated/providers/${{ matrix.provider }}.txt

test-and-build:
runs-on: ubuntu-latest
needs: generate-solutions
outputs:
domain: ${{ steps.meta.outputs.domain }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Install DNS tools
run: sudo apt-get update && sudo apt-get install -y dnsutils
- name: Run domain tests
run: ./scripts/test_domain.sh
- name: Generate multi-solution docs/json
run: ./scripts/generate_solutions.sh
- name: Build status payload
id: meta
run: |
DOMAIN=$(tr -d '\r\n' < CNAME)
A_RECORDS=$(dig +short A "$DOMAIN" | paste -sd ',' -)
AAAA_RECORDS=$(dig +short AAAA "$DOMAIN" | paste -sd ',' -)
NOW=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
mkdir -p site
cp generated/solutions.md site/solutions.md
cp generated/solutions.json site/solutions.json
cat > site/status.json <<JSON
{
"domain": "$DOMAIN",
"checked_at_utc": "$NOW",
"a_records": "${A_RECORDS}",
"aaaa_records": "${AAAA_RECORDS}",
"result": "pass"
}
JSON
echo "domain=$DOMAIN" >> "$GITHUB_OUTPUT"
- uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
with:
name: site-build
path: |
site

deploy-status-page:
if: github.event_name != 'pull_request'
runs-on: ubuntu-latest
needs: test-and-build
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: site-build
path: .
- name: Setup Pages
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0
- name: Upload Pages artifact
uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1
with:
path: ./site
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5
Loading