diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..24a8e87 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.png filter=lfs diff=lfs merge=lfs -text diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index 59b9c5e..4f5c01e 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -1,70 +1,29 @@ -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. - -# Sample workflow for building and deploying a Jekyll site to GitHub Pages -name: Deploy Jekyll site to Pages +name: github pages on: push: - branches: ["master"] - paths: - - "docs/**" - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow one concurrent deployment -concurrency: - group: "pages" - cancel-in-progress: true + branches: + - master + pull_request: jobs: - # Build job - build: - runs-on: ubuntu-latest - defaults: - run: - working-directory: docs + deploy: + runs-on: ubuntu-20.04 + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} steps: - - name: Checkout - uses: actions/checkout@v3 - - name: Setup Ruby - uses: ruby/setup-ruby@v1 - with: - ruby-version: '3.3' # Not needed with a .ruby-version file - bundler-cache: true # runs 'bundle install' and caches installed gems automatically - cache-version: 0 # Increment this number if you need to re-download cached gems - working-directory: '${{ github.workspace }}/docs' - - name: Setup Pages - id: pages - uses: actions/configure-pages@v3 - - name: Build with Jekyll - # Outputs to the './_site' directory by default - run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" - env: - JEKYLL_ENV: production - - name: Upload artifact - # Automatically uploads an artifact from the './_site' directory by default - uses: actions/upload-pages-artifact@v1 + - uses: actions/checkout@v2 + + - name: Setup mdBook + uses: peaceiris/actions-mdbook@v2 with: - path: "docs/_site/" + mdbook-version: 'latest' - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v2 \ No newline at end of file + - run: mdbook build docs + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + if: ${{ github.ref == 'refs/heads/main' }} + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./docs/book \ No newline at end of file diff --git a/docs/.gitignore b/docs/.gitignore index f9f1d49..7585238 100644 --- a/docs/.gitignore +++ b/docs/.gitignore @@ -1,15 +1 @@ -# Not sure what a .gitignore is? -# See: https://git-scm.com/docs/gitignore - -# These are directly copied from Jekyll's first-party docs on `.gitignore` files: -# https://jekyllrb.com/tutorials/using-jekyll-with-bundler/#commit-to-source-control - -# Ignore the default location of the built site, and caches and metadata generated by Jekyll -_site/ -.sass-cache/ -.jekyll-cache/ -.jekyll-metadata - -# Ignore folders generated by Bundler -.bundle/ -vendor/ +book diff --git a/docs/Gemfile b/docs/Gemfile deleted file mode 100644 index 0a1bfe6..0000000 --- a/docs/Gemfile +++ /dev/null @@ -1,7 +0,0 @@ -source 'https://rubygems.org' - -gem "jekyll", "~> 4.3.3" # installed by `gem jekyll` -# gem "webrick" # required when using Ruby >= 3 and Jekyll <= 4.2.2 - -gem "just-the-docs", "0.8.2" # pinned to the current release -# gem "just-the-docs" # always download the latest release diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock deleted file mode 100644 index da34973..0000000 --- a/docs/Gemfile.lock +++ /dev/null @@ -1,92 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - addressable (2.8.6) - public_suffix (>= 2.0.2, < 6.0) - colorator (1.1.0) - concurrent-ruby (1.2.3) - em-websocket (0.5.3) - eventmachine (>= 0.12.9) - http_parser.rb (~> 0) - eventmachine (1.2.7) - ffi (1.16.3) - forwardable-extended (2.6.0) - google-protobuf (4.26.1) - rake (>= 13) - google-protobuf (4.26.1-arm64-darwin) - rake (>= 13) - google-protobuf (4.26.1-x86_64-linux) - rake (>= 13) - http_parser.rb (0.8.0) - i18n (1.14.4) - concurrent-ruby (~> 1.0) - jekyll (4.3.3) - addressable (~> 2.4) - colorator (~> 1.0) - em-websocket (~> 0.5) - i18n (~> 1.0) - jekyll-sass-converter (>= 2.0, < 4.0) - jekyll-watch (~> 2.0) - kramdown (~> 2.3, >= 2.3.1) - kramdown-parser-gfm (~> 1.0) - liquid (~> 4.0) - mercenary (>= 0.3.6, < 0.5) - pathutil (~> 0.9) - rouge (>= 3.0, < 5.0) - safe_yaml (~> 1.0) - terminal-table (>= 1.8, < 4.0) - webrick (~> 1.7) - jekyll-include-cache (0.2.1) - jekyll (>= 3.7, < 5.0) - jekyll-sass-converter (3.0.0) - sass-embedded (~> 1.54) - jekyll-seo-tag (2.8.0) - jekyll (>= 3.8, < 5.0) - jekyll-watch (2.2.1) - listen (~> 3.0) - just-the-docs (0.8.2) - jekyll (>= 3.8.5) - jekyll-include-cache - jekyll-seo-tag (>= 2.0) - rake (>= 12.3.1) - kramdown (2.4.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) - liquid (4.0.4) - listen (3.9.0) - rb-fsevent (~> 0.10, >= 0.10.3) - rb-inotify (~> 0.9, >= 0.9.10) - mercenary (0.4.0) - pathutil (0.16.2) - forwardable-extended (~> 2.6) - public_suffix (5.0.5) - rake (13.2.1) - rb-fsevent (0.11.2) - rb-inotify (0.10.1) - ffi (~> 1.0) - rexml (3.2.6) - rouge (4.2.1) - safe_yaml (1.0.5) - sass-embedded (1.75.0) - google-protobuf (>= 3.25, < 5.0) - rake (>= 13.0.0) - sass-embedded (1.75.0-arm64-darwin) - google-protobuf (>= 3.25, < 5.0) - sass-embedded (1.75.0-x86_64-linux-gnu) - google-protobuf (>= 3.25, < 5.0) - terminal-table (3.0.2) - unicode-display_width (>= 1.1.1, < 3) - unicode-display_width (2.5.0) - webrick (1.8.1) - -PLATFORMS - arm64-darwin - x86_64-linux-gnu - -DEPENDENCIES - jekyll (~> 4.3.3) - just-the-docs (= 0.8.2) - -BUNDLED WITH - 2.5.9 diff --git a/docs/LICENSE b/docs/LICENSE deleted file mode 100644 index 7d510d0..0000000 --- a/docs/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2022 just-the-docs - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/docs/_config.yml b/docs/_config.yml deleted file mode 100644 index 825c6df..0000000 --- a/docs/_config.yml +++ /dev/null @@ -1,8 +0,0 @@ -title: Desktop Entry Daemon Docs -description: Documentation for Desktop Entry Daemon -theme: just-the-docs - -url: https://ryanabx.github.io/desktop-entry-daemon - -aux_links: - GitHub: https://github.com/ryanabx/desktop-entry-daemon diff --git a/docs/book.toml b/docs/book.toml new file mode 100644 index 0000000..9be5f0e --- /dev/null +++ b/docs/book.toml @@ -0,0 +1,6 @@ +[book] +authors = ["Ryan Brue "] +language = "en" +multilingual = false +src = "src" +title = "Desktop Entry Daemon - Register desktop entries at runtime through DBus" diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md new file mode 100644 index 0000000..c2fc145 --- /dev/null +++ b/docs/src/SUMMARY.md @@ -0,0 +1,4 @@ +# Summary + +- [Introduction](./introduction.md) +- [Usage](./usage.md) diff --git a/docs/index.md b/docs/src/introduction.md similarity index 98% rename from docs/index.md rename to docs/src/introduction.md index 9b1f768..87fa23f 100644 --- a/docs/index.md +++ b/docs/src/introduction.md @@ -1,8 +1,3 @@ ---- -title: Home -layout: home ---- - # Desktop Entry Daemon Desktop Entry Daemon is a userspace DBus API and daemon to manage desktop entries. This could be expanded later to include a system-level component, but the current scope is just for userspace applications. diff --git a/res/USAGE.md b/docs/src/usage.md similarity index 100% rename from res/USAGE.md rename to docs/src/usage.md diff --git a/justfile b/justfile index fddc8d6..7d3e040 100644 --- a/justfile +++ b/justfile @@ -11,10 +11,10 @@ lib-dir := '/lib' daemon-src := 'target' / 'release' / name daemon-dst := base-dir / 'bin' / name -data-src := 'profile.d' / 'desktop-entry-daemon.sh' +data-src := 'res' / 'desktop-entry-daemon.profile.d' data-dst := conf-dir / 'profile.d' / 'desktop-entry-daemon.sh' -service-src := 'systemd' / 'desktop-entry-daemon.service' +service-src := 'res' / 'desktop-entry-daemon.service' service-dst := lib-dir / 'systemd' / 'user' / 'desktop-entry-daemon.service' build *args: diff --git a/profile.d/desktop-entry-daemon.sh b/res/desktop-entry-daemon.profile.d similarity index 100% rename from profile.d/desktop-entry-daemon.sh rename to res/desktop-entry-daemon.profile.d diff --git a/systemd/desktop-entry-daemon.service b/res/desktop-entry-daemon.service similarity index 100% rename from systemd/desktop-entry-daemon.service rename to res/desktop-entry-daemon.service diff --git a/res/desktopentry.png b/res/desktopentry.png index 6ddbd44..8609521 100644 Binary files a/res/desktopentry.png and b/res/desktopentry.png differ