Skip to content

Updates README and overleaf to 6.1.2#2

Merged
zendern merged 10 commits intomainfrom
updates
Mar 1, 2026
Merged

Updates README and overleaf to 6.1.2#2
zendern merged 10 commits intomainfrom
updates

Conversation

@zendern
Copy link
Contributor

@zendern zendern commented Feb 27, 2026

While getting this setup i could not run it due to sh being mentioned in the readme. Should have been using bash. So fix that. Also updated formatting on the README and updated to overleaf 6.1.2 while i was at it.

Summary by CodeRabbit

  • Documentation
    • Reorganized setup guide into a consolidated first-time/update sequence, added explicit IP binding and persistence (zip export) notes, and reformatted How-tos including Beamer→PPTX steps and local project workflow with admin user creation.
  • New Features
    • Added configurable nginx and TLS options for secure local deployment.
  • Chores
    • Bumped version to 6.1.2, switched default data paths to relative directories, added CI workflow and changelog entry.

@zendern zendern requested a review from ejfine February 27, 2026 21:36
@coderabbitai
Copy link

coderabbitai bot commented Feb 27, 2026

Warning

Rate limit exceeded

@zendern has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 20 minutes and 30 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between d884700 and e630537.

📒 Files selected for processing (1)
  • README.md
📝 Walkthrough

Walkthrough

Consolidated README setup instructions and expanded How-tos; updated default paths in overleaf config from absolute to relative and added TLS/nginx settings; bumped package version to 6.1.2; small comment edits for thumbnail generation; added a placeholder GitHub Actions CI workflow and a minor .gitignore formatting tweak.

Changes

Cohort / File(s) Summary
Documentation & Changelog
README.md, overleaf/CHANGELOG.md
Rewrote setup/First-time instructions, reorganized How-tos (including Beamer→PPTX guidance), added note on file persistence and admin/login steps; added changelog entry for 6.1.2.
Configuration
overleaf/config/overleaf.rc, overleaf/config/variables.env, overleaf/lib/config-seed/variables.env
Changed data paths from absolute (/home/...) to relative (data/...); added NGINX/TLS settings (NGINX_ENABLED, ports, listen IPs, cert/key paths); updated thumbnail generation comment to reference external converter (pdftocairo).
Version Files
overleaf/config/version, overleaf/lib/config-seed/version
Bumped version from 6.1.1 to 6.1.2.
CI Workflow
.github/workflows/ci.yaml
Added new GitHub Actions workflow ci checks with a placeholder job and TODO note.
.gitignore Formatting
overleaf/.gitignore
Minor comment formatting change (removed space after # on a comment line).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 I hopped through docs and tidy configs too,

Version six-one-two now peeks into view,
Paths turned cozy, TLS set to gleam,
A tiny CI seed and README made clean.
This rabbit nibbles carrots, and says: "Ship with a pew!" 🥕

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main changes: README instructions updated and Overleaf configuration bumped to version 6.1.2, matching the substantial modifications across multiple files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch updates

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (2)
overleaf/.gitignore (1)

7-7: Minor formatting inconsistency.

The space after # was removed, making the commented-out pattern less readable. While both forms are valid comments in .gitignore, the conventional style uses a space after # for clarity.

Suggested fix
-#config/**/*
+# config/**/*
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@overleaf/.gitignore` at line 7, Reintroduce the conventional space after the
hash in the commented-out pattern in .gitignore by changing the comment from
"#config/**/*" to "# config/**/*" (locate the commented pattern currently
written as "#config/**/*") so the comment is more readable while retaining its
inactive state.
README.md (1)

11-11: Consider formalizing wording on Line 11 for docs tone consistency.

gonna reads informal in setup instructions; replacing with going to would keep style consistent.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 11, Replace the informal word "gonna" in the README setup
sentence that references the command overleaf/bin/init with the formal phrase
"going to" to maintain consistent documentation tone; update the sentence "Set
up basic config `bash overleaf/bin/init`. that's gonna use the full sharelatex
image..." to use "going to" and also fix capitalization/punctuation around the
sentence for clarity.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Line 7: Replace the broken image-style internal link "! [Running
Overleaf](`#running-overleaf`)" with a standard markdown link "[Running
Overleaf](`#running-overleaf`)" in the README text so the section navigation works
correctly; locate the exact string in the README (the sentence starting "If you
are simply looking to start overleaf from this repo skip to") and update it to
use square-bracket link syntax.
- Line 5: Fix the heading typo in the README where the heading text "# First
time setup of overleaf or updating overleaf verisons" appears: change "verisons"
to "versions" so the heading reads "# First time setup of overleaf or updating
overleaf versions".
- Line 2: Remove the accidental standalone character 'g' on line 2 of the README
(the stray character introduced in the diff) so the file no longer contains that
unintended character; simply delete that single character and ensure the README
renders correctly with no other changes.

---

Nitpick comments:
In `@overleaf/.gitignore`:
- Line 7: Reintroduce the conventional space after the hash in the commented-out
pattern in .gitignore by changing the comment from "#config/**/*" to "#
config/**/*" (locate the commented pattern currently written as "#config/**/*")
so the comment is more readable while retaining its inactive state.

In `@README.md`:
- Line 11: Replace the informal word "gonna" in the README setup sentence that
references the command overleaf/bin/init with the formal phrase "going to" to
maintain consistent documentation tone; update the sentence "Set up basic config
`bash overleaf/bin/init`. that's gonna use the full sharelatex image..." to use
"going to" and also fix capitalization/punctuation around the sentence for
clarity.

ℹ️ Review info

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 89dada6 and bcc7566.

📒 Files selected for processing (27)
  • README.md
  • overleaf/.github/ISSUE_TEMPLATE.md
  • overleaf/.github/PULL_REQUEST_TEMPLATE.md
  • overleaf/.gitignore
  • overleaf/CHANGELOG.md
  • overleaf/bin/backup-config
  • overleaf/bin/dev/lint
  • overleaf/bin/docker-compose
  • overleaf/bin/doctor
  • overleaf/bin/error-logs
  • overleaf/bin/images
  • overleaf/bin/init
  • overleaf/bin/logs
  • overleaf/bin/mongo
  • overleaf/bin/rename-env-vars-5-0
  • overleaf/bin/rename-rc-vars
  • overleaf/bin/run-script
  • overleaf/bin/shell
  • overleaf/bin/start
  • overleaf/bin/stop
  • overleaf/bin/up
  • overleaf/bin/upgrade
  • overleaf/config/overleaf.rc
  • overleaf/config/variables.env
  • overleaf/config/version
  • overleaf/lib/config-seed/variables.env
  • overleaf/lib/config-seed/version

zendern and others added 3 commits February 27, 2026 16:38
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# Uncomment the OVERLEAF_IMAGE_NAME variable to use a user-defined image.
# OVERLEAF_IMAGE_NAME=sharelatex/sharelatex
OVERLEAF_DATA_PATH=/home/labsync/overleaf-data/overleaf
OVERLEAF_DATA_PATH=data/overleaf
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so what is this actually doing? /home/labsync was my folder inside WSL2-Ubuntu (labsync is the user name I set up). would this mean I would have to launch overleaf differently somehow? or because it doesn't start with a / does that mean it's just going to put the data wherever the current working dir is...? I don't understand WSL2 very well

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This makes it so there is not a hardcoded absolute path but now a relative path. So it will work on other machines and be stored within the project dir. This is the defaults and overleaf .gitignore is already setup to not commit those data dirs since its setup to be relative to the project.

image

@ejfine
Copy link
Contributor

ejfine commented Feb 27, 2026

can you add a no-op required-check job for github CI? I can force-merge this myself as admin, but if we actually want to have other people start using it, then we need required-check to run for the default Branch Ruleset to be happy

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
README.md (1)

8-8: Tighten the setup instruction sentence on Line 8 for clarity.

This line is a run-on and uses informal phrasing (“gonna”), which makes a critical setup step easier to misread.

Suggested rewrite
-1. Run the following to clone the repo at a given version, cleanup .git dirs and setup basic config `bash overleaf/bin/init`. that's gonna use the full sharelatex image...if you want to make a custom one, put a Dockerfile in there and look at the overleaf.rc
+1. Run the following commands to clone the repo at a pinned version, remove nested `.git` directories, and initialize config with `bash overleaf/bin/init`.
+   This uses the default ShareLaTeX/Overleaf image. If you want a custom image, add a `Dockerfile` and update `overleaf.rc`.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 8, Rewrite the run-on sentence into a concise, formal
instruction: state that users should clone the repo at a given version and run
the initialization script `bash overleaf/bin/init`; then explain in a second
sentence that the script uses the default full sharelatex image but you can
provide a custom image by adding a Dockerfile in `overleaf/bin` and configuring
`overleaf.rc`. Remove informal phrasing like “gonna” and ensure the command and
file names (`bash overleaf/bin/init`, `Dockerfile`, `overleaf.rc`, "sharelatex
image") are mentioned exactly so readers can locate them.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Around line 10-17: The fenced code block containing the git commands (the
block that starts with "git clone https://github.com/overleaf/toolkit.git
overleaf") lacks a language identifier and triggers MD040; update that Markdown
fenced block to include a language tag (e.g., "bash") after the opening
backticks so the block becomes a labeled shell snippet and satisfies the linter.
- Around line 40-41: The README currently pins exact apt package versions for
imagemagick and zip which break on Ubuntu 22.04; update the README entry (where
the lines show `imagemagick=8:6.9.12...` and `zip=3.0-13ubuntu0.2`) to either
remove the "=version" pins so apt installs the available package, or add
separate, version-specific commands and a short note listing supported Ubuntu
releases (e.g., jammy vs lunar) and which pinned versions apply; ensure the
examples reference the package names imagemagick and zip so readers can find the
correct commands.

---

Nitpick comments:
In `@README.md`:
- Line 8: Rewrite the run-on sentence into a concise, formal instruction: state
that users should clone the repo at a given version and run the initialization
script `bash overleaf/bin/init`; then explain in a second sentence that the
script uses the default full sharelatex image but you can provide a custom image
by adding a Dockerfile in `overleaf/bin` and configuring `overleaf.rc`. Remove
informal phrasing like “gonna” and ensure the command and file names (`bash
overleaf/bin/init`, `Dockerfile`, `overleaf.rc`, "sharelatex image") are
mentioned exactly so readers can locate them.

ℹ️ Review info

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between bcc7566 and 0450be0.

📒 Files selected for processing (1)
  • README.md

Comment on lines +40 to +41
4. Need to install imagemagick (this version worked, but no particular reason to pin to that): `sudo apt-get update && sudo apt-get install -y imagemagick=8:6.9.12.98+dfsg1-5.2build2`
5. May also need to install zip (this version worked, but no particular reason to pin to that): `sudo apt-get update && sudo apt-get install -y zip=3.0-13ubuntu0.2`
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

# First, let's explore the repository and read the README.md file
git ls-files | head -20

Repository: LabAutomationAndScreening/latex-presentations

Length of output: 510


🏁 Script executed:

# Find and read the README.md file
fd README.md -x wc -l {}

Repository: LabAutomationAndScreening/latex-presentations

Length of output: 179


🏁 Script executed:

# Read the README.md file around lines 40-41
sed -n '30,50p' README.md

Repository: LabAutomationAndScreening/latex-presentations

Length of output: 1066


🌐 Web query:

Ubuntu 22.04 apt repository package availability imagemagick 6.9.12.98

💡 Result:

Ubuntu 22.04 (jammy) official APT repositories (release/updates/security) do not provide ImageMagick 6.9.12.98.

  • In jammy, the imagemagick source/package series is 8:6.9.11.60+dfsg-1.3… (e.g., …ubuntu0.22.04.5 in updates/security). [1][2]
  • The 6.9.12.98 packaging line appears in Ubuntu 24.04 (noble) (e.g., 8:6.9.12.98+dfsg1-…), not jammy. [3]

So, 6.9.12.98 isn’t available from Ubuntu 22.04’s standard apt repos; you’d need a PPA/backport, build from source, or upgrade to 24.04 to get that version. [3]

Sources:
[1] https://packages.ubuntu.com/jammy/imagemagick
[2] https://launchpad.net/ubuntu/jammy/%2Bpackage/imagemagick
[3] https://launchpad.net/ubuntu/%2Bsource/imagemagick


🌐 Web query:

Ubuntu 24.04 apt repository package availability imagemagick version

💡 Result:

Ubuntu 24.04 LTS (“noble”) apt repositories ship ImageMagick 6 (legacy), not ImageMagick 7.

  • The imagemagick package in noble is version 8:6.9.12.98+dfsg1-5.2build2 (Universe). [1]
  • The actual binaries come from the IM6 packages like imagemagick-6.q16 (same version). [2]
  • imagemagick-7.* packages do not appear in noble; Ubuntu’s package search shows imagemagick-7.q16 / imagemagick-7-common only in newer releases (e.g., 25.04 “plucky”). [3]

Sources: [1] packages.ubuntu.com (noble imagemagick) • [2] ubuntuupdates.org (noble imagemagick-6.q16) • [3] packages.ubuntu.com search results (shows IM7 packages only in later suites)


🌐 Web query:

Ubuntu 22.04 apt repository package availability zip 3.0-13ubuntu0.2

💡 Result:

zip version 3.0-13ubuntu0.2 is not published for Ubuntu 22.04 (jammy) in the official apt repositories (jammy release/updates/security). The zip binary package published for jammy is 3.0-12build2. [1]

The version 3.0-13ubuntu0.2 is published for Ubuntu 24.04 (noble) -updates (not jammy). [2]

How to confirm on a jammy machine:

apt-cache policy zip
apt list -a zip

Sources

  1. Launchpad “zip : Jammy (22.04) : Ubuntu” (shows published versions for jammy) [1]
  2. Launchpad “Publishing history of zip package in Ubuntu” (shows 3.0-13ubuntu0.2 published for noble-updates) [2]

Remove or adjust exact apt package version pins to support multiple Ubuntu releases.

The pinned versions for imagemagick and zip are unavailable in Ubuntu 22.04 and will cause setup failures on that release:

  • imagemagick=8:6.9.12.98+dfsg1-5.2build2 is not in jammy apt repos (only 8:6.9.11.60+dfsg-1.3x variants exist)
  • zip=3.0-13ubuntu0.2 is not in jammy apt repos (only 3.0-12build2 exists)

Both versions are available in Ubuntu 24.04, but pinning breaks Ubuntu 22.04 compatibility. Either omit version specifiers (install latest available), document which Ubuntu versions are supported, or provide version-specific installation commands.

🧰 Tools
🪛 LanguageTool

[style] ~41-~41: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...:6.9.12.98+dfsg1-5.2build2` 5. May also need to install zip (this version worked, but n...

(REP_NEED_TO_VB)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 40 - 41, The README currently pins exact apt package
versions for imagemagick and zip which break on Ubuntu 22.04; update the README
entry (where the lines show `imagemagick=8:6.9.12...` and `zip=3.0-13ubuntu0.2`)
to either remove the "=version" pins so apt installs the available package, or
add separate, version-specific commands and a short note listing supported
Ubuntu releases (e.g., jammy vs lunar) and which pinned versions apply; ensure
the examples reference the package names imagemagick and zip so readers can find
the correct commands.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
.github/workflows/ci.yaml (1)

1-14: Workflow serves its intended purpose as a branch ruleset placeholder.

The no-op required-check job correctly satisfies the branch ruleset requirement as discussed in the PR comments.

Minor style observations:

  • Line 11: Step list item uses 8-space indentation; conventional GitHub Actions style is 6 spaces (consistent 2-space nesting).
  • Line 13: Trailing whitespace after "passing".

These don't affect functionality but could be tidied for consistency.

,

♻️ Optional style fix
 jobs:
   required-check:
     runs-on: ubuntu-24.04
     steps:
-        - run: |
-            `#TODO` : we should add some real checks at some point. Maybe fire up overleaf and confirm it works?
-            echo "passing" 
+      - run: |
+          `#TODO` : we should add some real checks at some point. Maybe fire up overleaf and confirm it works?
+          echo "passing"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/ci.yaml around lines 1 - 14, Tidy the CI workflow YAML by
normalizing indentation and removing trailing spaces: in the job named
"required-check" adjust the steps block so the step entries use 6 spaces
(two-space nesting from the jobs level) instead of 8, and remove the trailing
whitespace after the echo "passing" string (the step invoking the no-op echo).
Ensure indentation for the steps list and the run: multiline block is consistent
with other workflow files.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.github/workflows/ci.yaml:
- Around line 1-14: Tidy the CI workflow YAML by normalizing indentation and
removing trailing spaces: in the job named "required-check" adjust the steps
block so the step entries use 6 spaces (two-space nesting from the jobs level)
instead of 8, and remove the trailing whitespace after the echo "passing" string
(the step invoking the no-op echo). Ensure indentation for the steps list and
the run: multiline block is consistent with other workflow files.

ℹ️ Review info

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0450be0 and d884700.

📒 Files selected for processing (1)
  • .github/workflows/ci.yaml

@zendern
Copy link
Contributor Author

zendern commented Feb 28, 2026

can you add a no-op required-check job for github CI? I can force-merge this myself as admin, but if we actually want to have other people start using it, then we need required-check to run for the default Branch Ruleset to be happy

Added d884700

@zendern zendern merged commit 7019622 into main Mar 1, 2026
2 checks passed
@zendern zendern deleted the updates branch March 1, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants