Skip to content
Merged
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
65fac42
make fonts slightly smaller
matheusfillipe Jan 30, 2026
92be0d4
Fix icons in text input stacking up on low width
matheusfillipe Jan 30, 2026
97e8796
fix topic display
matheusfillipe Jan 31, 2026
36f71e9
Add zsync information into Appimages
matheusfillipe Jan 31, 2026
20fb882
improve channel reordering
matheusfillipe Jan 31, 2026
e3bc34d
fix: native open urls in external browser
matheusfillipe Jan 31, 2026
8515252
Fix external link warning
matheusfillipe Feb 1, 2026
3f3d017
Handle internal IRC urls
matheusfillipe Feb 1, 2026
691d432
Refactor some modals. Start unifying in base component.
matheusfillipe Feb 1, 2026
e38b80c
Fix whisper
matheusfillipe Feb 1, 2026
62b9c47
Small fixes
matheusfillipe Feb 1, 2026
0a375d2
Remember sidebar states on reopen
matheusfillipe Feb 2, 2026
8f5e022
Add more quick actions
matheusfillipe Feb 8, 2026
2209b8e
Small fix for scrolling
matheusfillipe Feb 11, 2026
35b33fb
Make memeber list more reactive and replace chat area when too narrow
matheusfillipe Feb 12, 2026
f6f926a
swipe to delete or to reply and make text in messages easier to select
matheusfillipe Feb 12, 2026
56b3607
fix email
matheusfillipe Feb 12, 2026
67ee28a
Reply to whisper
matheusfillipe Feb 12, 2026
90f442b
Fix clipped status tooltip in mobile view
matheusfillipe Feb 12, 2026
e414688
Only have swipe messages in touch devices
matheusfillipe Feb 12, 2026
615f127
trying to fix startup restoring
matheusfillipe Feb 12, 2026
e4bcb26
Small fixes
matheusfillipe Feb 13, 2026
a3c7125
fix spacing of second line in messages
matheusfillipe Feb 16, 2026
3ce1365
make scroling more sticky to the bottom on startup
matheusfillipe Feb 16, 2026
7180c5a
display images from trusted servers in preview when url is in message…
matheusfillipe Feb 16, 2026
3a030eb
make default state color for PMs same as channels
matheusfillipe Feb 16, 2026
d3857ec
Refactor to use unified text input component without auto complete bu…
matheusfillipe Feb 16, 2026
c7fe1c5
Fix markdown with colors rendering
matheusfillipe Feb 17, 2026
0103e68
Deduplicate multiline messages from history
matheusfillipe Feb 17, 2026
f640599
fix mobile browser
matheusfillipe Feb 17, 2026
8e9a3bd
Detect images even in colorized/IRC escaped mesgs
matheusfillipe Feb 17, 2026
724b790
always display avatars in messages
matheusfillipe Feb 17, 2026
814c6c6
- [x] reactions not recovered from history
matheusfillipe Feb 19, 2026
7da2f5d
Avoid flood of messages and previews. Multiple urls become flood of i…
matheusfillipe Feb 20, 2026
d40dafc
make connection survive sleep?
matheusfillipe Feb 22, 2026
e6de627
ctrl tab in desktop
matheusfillipe Feb 22, 2026
602c45e
Fix DMs white screen bug
matheusfillipe Feb 23, 2026
9a96193
fix input height
matheusfillipe Feb 23, 2026
84311d7
dev add helper runners for testing locally mutliple devices at same time
matheusfillipe Feb 25, 2026
a04b6ce
make buttons larger on mobile
matheusfillipe Feb 27, 2026
fec04c9
Make more mobile friendly - modals instead of popups, search take ove…
matheusfillipe Feb 27, 2026
290193d
fix mac history stick
matheusfillipe Feb 27, 2026
5f9166b
fix multiline replies
matheusfillipe Mar 6, 2026
d41b55a
add helper script for local ios dev
matheusfillipe Mar 6, 2026
f441ca6
Merge branch 'main' of https://github.com/ObsidianIRC/ObsidianIRC int…
matheusfillipe Mar 6, 2026
a6c7595
Polish add server modal for phone
matheusfillipe Mar 7, 2026
49db5d9
multiple mobile modal improvements and ios stuff
matheusfillipe Mar 8, 2026
a0e3259
fix test
matheusfillipe Mar 8, 2026
ccdcce8
Improvements to mobile textarea input
matheusfillipe Mar 8, 2026
c011360
Merge branch 'main' of https://github.com/ObsidianIRC/ObsidianIRC int…
matheusfillipe Mar 8, 2026
1985b08
Make user settings modal mobile friendly
matheusfillipe Mar 8, 2026
7a6e626
cleanup
matheusfillipe Mar 8, 2026
2c3d6c1
fix member filtering in mobile
matheusfillipe Mar 8, 2026
a4f91d5
Fixes for user context menu popup
matheusfillipe Mar 8, 2026
ef52e26
more small fixes for mobile modals
matheusfillipe Mar 9, 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
58 changes: 56 additions & 2 deletions .github/workflows/publish.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ jobs:
if: matrix.platform == 'ubuntu-22.04' # This must match the platform value defined above.
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.1-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev patchelf pkg-config
sudo apt-get install -y libwebkit2gtk-4.1-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev patchelf pkg-config zsync

- name: setup node
uses: actions/setup-node@v4
Expand Down Expand Up @@ -91,6 +91,42 @@ jobs:
prerelease: ${{ needs.collect-version.outputs.prerelease == 'true' }}
args: ${{ matrix.args }}

- name: Generate zsync files for AppImages
if: matrix.platform == 'ubuntu-22.04'
run: |
# Find AppImage files
APPIMAGE_DIR="./src-tauri/target/release/bundle/appimage"
if [ -d "$APPIMAGE_DIR" ]; then
for appimage in $APPIMAGE_DIR/*.AppImage; do
if [ -f "$appimage" ]; then
echo "Generating zsync for $appimage"
zsyncmake -o "${appimage}.zsync" "$appimage"
fi
done
fi

- name: Embed update information in AppImages
if: matrix.platform == 'ubuntu-22.04'
run: |
APPIMAGE_DIR="./src-tauri/target/release/bundle/appimage"
if [ -d "$APPIMAGE_DIR" ]; then
for appimage in $APPIMAGE_DIR/*_amd64.AppImage; do
if [ -f "$appimage" ]; then
echo "Embedding update info in $appimage"
printf 'gh-releases-zsync|ObsidianIRC|ObsidianIRC|latest|ObsidianIRC_*_amd64.AppImage.zsync' | \
dd of="$appimage" bs=1 seek=33651 count=512 conv=notrunc
fi
done
fi

- name: Upload zsync files
if: matrix.platform == 'ubuntu-22.04'
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ needs.collect-version.outputs.tag_name }}
files: |
./src-tauri/target/release/bundle/appimage/*.zsync
Comment on lines +116 to +138

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Embedded update info never reaches the published amd64 AppImage.

The tauri-action at line 83 both builds and uploads the AppImage to the release. By the time the "Embed update information" step (line 108) patches the local file, the unpatched AppImage has already been published. The "Upload zsync files" step only uploads .zsync files — not the modified AppImage.

Compare with the ARM flow (lines 159–193), where npm run tauri build only builds locally, then embed runs, and then softprops/action-gh-release publishes the final artifact — correct order.

To fix this for the amd64 path, you'd need to either:

  1. Re-upload the patched AppImage after embedding (add it to the files: list in the upload step), or
  2. Separate the tauri-action build from the release (use tauriScript / skip release upload), embed, then publish all artifacts together.
🤖 Prompt for AI Agents
In @.github/workflows/publish.yaml around lines 108 - 128, The published amd64
AppImage is uploaded before the "Embed update information in AppImages" step
runs, so your patch never reaches the release; modify the workflow so the
release action uploads the patched AppImage (or delay release until after
embedding). Specifically, either add the patched AppImage path
(./src-tauri/target/release/bundle/appimage/*_amd64.AppImage) to the files: list
of the softprops/action-gh-release step named "Upload zsync files", or change
the tauri-action invocation (the earlier "tauri-action" build step) to only
build (use tauriScript or disable automatic release upload) so that the "Embed
update information in AppImages" step runs before softprops/action-gh-release
publishes; ensure APPIMAGE_DIR and the "Embed update information in AppImages"
step still point to the same files so the uploaded artifacts include the
dd-patched AppImage.


publish-linux-arm:
runs-on: ubuntu-22.04-arm # Use 22.04 for glibc 2.35 compatibility
needs: collect-version
Expand All @@ -101,7 +137,7 @@ jobs:
- name: install dependencies (ubuntu only)
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends --no-install-suggests curl libwebkit2gtk-4.1-dev build-essential libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev patchelf libfuse2 file pkg-config xdg-utils
sudo apt-get install -y --no-install-recommends --no-install-suggests curl libwebkit2gtk-4.1-dev build-essential libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev patchelf libfuse2 file pkg-config xdg-utils zsync

- name: setup node
uses: actions/setup-node@v4
Expand All @@ -123,6 +159,23 @@ jobs:
- name: Build app
run: npm run tauri build -- --verbose

- name: Generate zsync files
run: |
APPIMAGE_PATH="./src-tauri/target/release/bundle/appimage/ObsidianIRC_${{ needs.collect-version.outputs.current_version}}_aarch64.AppImage"
if [ -f "$APPIMAGE_PATH" ]; then
echo "Generating zsync for $APPIMAGE_PATH"
zsyncmake -o "${APPIMAGE_PATH}.zsync" "$APPIMAGE_PATH"
fi

- name: Embed update information in AppImage
run: |
APPIMAGE_PATH="./src-tauri/target/release/bundle/appimage/ObsidianIRC_${{ needs.collect-version.outputs.current_version}}_aarch64.AppImage"
if [ -f "$APPIMAGE_PATH" ]; then
echo "Embedding update info in $APPIMAGE_PATH"
printf 'gh-releases-zsync|ObsidianIRC|ObsidianIRC|latest|ObsidianIRC_*_aarch64.AppImage.zsync' | \
dd of="$APPIMAGE_PATH" bs=1 seek=33651 count=512 conv=notrunc
fi

- name: Publish
uses: softprops/action-gh-release@v2
with:
Expand All @@ -137,6 +190,7 @@ jobs:
./src-tauri/target/release/bundle/deb/ObsidianIRC_${{ needs.collect-version.outputs.current_version}}_arm64.deb
./src-tauri/target/release/bundle/rpm/ObsidianIRC-${{ needs.collect-version.outputs.current_version}}-1.aarch64.rpm
./src-tauri/target/release/bundle/appimage/ObsidianIRC_${{ needs.collect-version.outputs.current_version}}_aarch64.AppImage
./src-tauri/target/release/bundle/appimage/ObsidianIRC_${{ needs.collect-version.outputs.current_version}}_aarch64.AppImage.zsync

publish-android:
runs-on: ubuntu-latest
Expand Down
Loading
Loading