Commit Graph

97 Commits

Author SHA1 Message Date
Jamie Pine
20a55a62db chore: migrate from pnpm to Bun, update Node.js version, and remove unused configuration files 2025-11-09 22:34:26 -08:00
Jamie Pine
f43d2456da (chore): CI fix 2025-10-14 23:02:13 -07:00
Jamie Pine
c24063e892 (chore): CI fix 2025-10-14 22:39:16 -07:00
Jamie Pine
d90b486865 refactor: update project dependencies and remove unused components
- Removed the `prisma-client-rust` and `prisma-client-rust-sdk` dependencies from `Cargo.toml` to streamline the project.
- Deleted the `spacedrive-jobs-derive` crate, consolidating job registration functionality into the main job system.
- Updated the `.gitattributes` file to reflect changes in generated code tracking.
- Adjusted the `package.json` scripts for improved build processes and removed unnecessary commands.
- Enhanced the `combine.sh` script to correctly reference documentation paths.

These changes aim to simplify the project structure and improve maintainability.
2025-09-08 17:26:31 -04:00
Arnab Chakraborty
a4bc9a5665 Revert "Remove ffmpeg building in actions" 2025-03-01 06:21:42 +03:00
Arnab Chakraborty
e782726fe5 Remove ffmpeg building in actions
Was fixed in a native deps update
2025-03-01 02:15:59 +03:00
Arnab Chakraborty
737e8b51d8 Build latest FFmpeg on Linux
Because Github Runners don't have Ubuntu 24.10
2025-02-23 20:50:34 -05:00
Arnab Chakraborty
a05b28e260 Try getting ffmpeg 7 on Linux runner 2025-02-22 05:58:38 +00:00
Arnab Chakraborty
b3769231ea Fix shell error in build 2025-02-22 05:27:09 +00:00
Arnab Chakraborty
1541519f26 Try to fix linux release runner 2025-02-22 05:23:10 +00:00
Vítor Vasconcellos
cc7c9d5793 Improve file thumbnails and Quick Preview (+ some code clean-up and rust deps update) (#2758)
* Update rspc, prisma-client-rust, axum and tanstack-query
 - Deleted some unused examples and fully commented out frontend code
 - Implement many changes required due to the updates
 - Update most rust dependencies

* Re-enable p2p

* Fix server

* Auto format

* Fix injected script format
 - Update some github actions
 - Update pnpm lock file

* Fix devtools showing up when app opens
 - Fix million complaining about Sparkles component

* Fix sd-server

* Fix and improve thumbnails rendering
 - Fix core always saying a new thumbnail was generated even for files that it skiped thumbnail generation
 - Rewrite FileThumb and improve related components

* Ignore tmp files when running prettier

* Improve FileThumb component performance
 - Rework useExplorerDraggable and useExplorerItemData hooks due to reduce unecessary re-renders

* More fixes for thumb component
 - A couple of minor performance improvements to frontend code

* auto format

* Fix Thumbnail and QuickPreview

* Fix logic for when to show 'fail to load original' error message in QuickPreview
 - Updated prisma-client-rust, libp2p, tauri, tauri-specta, rspc and hyper

* Fix type checking
 - Format scripts

* Add script prettier config

* Fix serde missing feature
 - Use rust-libp2p spacedrive fork again
 - Update rspc

* Autoformat + fix pnpm lock

* Fix thumbnail first load again

* Autoformat

* autoformat

* Fix rust-libp2p fork url again?

* Remove usePathsInfiniteQuery hook

* Update tauri 2.0.6
2024-10-21 15:47:40 +00:00
Vítor Vasconcellos
287a809de0 Fix release workflow (#2668)
* Fix frontend bundle upload
 - Update pnpm

* Revert incorrect removal of fontenf packaging job

* Fix tauri not building updater bundles

* Ensure release action is executed when PRs modify the publish-artifacts action

* Fix unused argument for patchTauri function

* Couple for format fixes

* tauri requires building the app bundle to build the updater
2024-08-17 08:29:32 +00:00
Vítor Vasconcellos
3675675d31 Fix prisma generate & Windows compilation (#2663)
* Ensure prisma generation works before continuing CI
 - Add script that list all dependencies with multiple version in Cargo.lock

* Ensure CI runs when custom actions are modified

* Rever windows change in hopes that it fixes prisma generation

* Fix prisma generation check in CI

* Update deps

* Replace prisma-client-rust-cli with oficial prisma cli to fix windows model generation
 - Revert back to windows-rs implementation of get_inode in file-path-helper
 - Adjust Github CI to use oficial prisma cli
 - Update scripts dependencies
 - Fix some new rust warnings due to it trying to compile OS specific code on all plataforms

* Fix windows-rs impl for get_inode_windows in file-path-helper

* More fixes to windows-rs impl for get_inode_windows in file-path-helper

* More fixes to windows-rs impl for get_inode_windows in file-path-helper

* More fixes to windows-rs impl for get_inode_windows in file-path-helper

* More fixes to windows-rs impl for get_inode_windows in file-path-helper

* More fixes to windows-rs impl for get_inode_windows in file-path-helper

* Import windows constant intead of hardcoding its value

* Fix check for prisma files in setup-rust

* Autoformat

* Fix iOS and Android targets in watcher

---------

Co-authored-by: Arnab Chakraborty <11457760+Rocky43007@users.noreply.github.com>
2024-08-16 10:55:38 +00:00
Vítor Vasconcellos
ae06459eea Package & distribute frontend bundle when doing releases for Linux (#2500)
* Package & distribute frontend bundle when doing releases for Linux

* Only check for tar.xz frontend bundle

* debug

* Fix sd-desktop
2024-06-04 23:19:41 +00:00
Consoli
c93921dae5 Faster debug builds (#2483)
* Config dev profile for faster debug builds

* Remove redundant changes to Cargo.toml in CI

* Forgot Windows

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
2024-05-14 05:59:52 +00:00
Vítor Vasconcellos
92a5817eae Media metadata extraction & Thumbnailer rework (#2285)
* initial ffprobe commit

* Working slim down version ffprobe

* Auto format ffprobe and deps source

* Remove show_pixel_formats logic
- Fix do_bitexact incorrect check in main after last changes
- Fix some clangd warning

* Remove show_* and print_format options and their respective logic

* Rework ffprobe into simple_ffprobe
- Simplify ffprobe logic into a simple program that gather and print a media file metadata

* Reduce the amount of ffmpeg log messages while generating thumbnails

* Fix completly wrong comments

* mend

* Start modeling ffmpeg extracted metadata on schema
 - Start porting ffprobe code to rust
 - Rename some references to media_data to exif_data

* Finish modeling media info data
 - Add MediaProgram, MediaStream, MediaCodec, MediaVideoProps, MediaAudioProps, MediaSubtitleProps to Schema
 - Fix simple_ffproble to use its custom print_codec, instead of ffmpeg's impl

* Add relation between MediaInfo and FilePath
 - Remove shared properties from MediaInfo and related structs
 - Implement Iterator for FFmpegDict

* Fix and update schema

* Data models and start populating MediaInfo in rust

* Finish populating media info, chapters and program

* Improve FFmpegFormatContext data raw pointer access
 - Implement stream data gathering

* Impl FFmpegCodecContext, retrieve codec information
 - Improve some unsafe pointer uses
 - Impl from FFmpegFormatContext to MediaInfo conversion

* Fix FFmpegDict Drop

* Fix some crago warnings

* Impl retrieval of video props
 - Fix C char* to Rust String convertion

* Impl retrieval of audio and subtitle props
 - Fill props for MediaCodec

* Remove simple_ffprobe now that the Rust impl is done

* Fix schema to match actually retrieved media info
 - Fix import some FFmpeg constants instead of directly using values

* Rework movie_decoder
 - Re-implement create_scale_string and add support anamorphic video
 - Improve C pointer access for FFmpegFormatContext and FFmpegCodecContext
 - Use newer FFmpeg abstractions in movie_decoder

* Fix incorrect props when initializing MovieDecoder

* Remove unecessary lifetimes

* Added more native wrappers for some FFmpeg native objects used in movie_decoder

* Remove FFmpegPacket
 - Some more improvements to movie_decoder

* WIP

* Some small fixes

* More fixes
Rename movie_decoder to frame_decoder
Remove more references to film_strips

* fmt

* Fix duplicate migration for job error changes

* fix rebase

* Solving segfaults, fuck C lang

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>

* Update rust to version 1.77
 - Pin rust version with rust-toolchain.toml
 - Change from dtolnay/rust-toolchain to IronCoreLabs/rust-toolchain for rust-toolchain support
 - Remove unused function and imports
 - Replace most CString uses with new c literal string

* More segfault solving and other minor fixes

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>

* Fix ffmpeg rotation filter breaking portrait video thumbnails #2150
 - Plus some other misc fixes

* Auto format

* Retrieve video/audio metadata on frontend

* Auto format

* First draft on ffmpeg data save on db

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>

* Fix some incorrect changes to prisma schema

* Some fixes for the FFmpegData schema
 - Expand logic to save FFmpegData to db

* A ton of things

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>

* Integrating ffmpeg media data in jobs and API

* Rspc can't BigInt

* 🙄

* Add initial ffmpeg metadata entries to Inspector
 - Fix ephemeral metadata api to match the files metadata api call

* Fix Inspector not showing ffmpeg metadata

* Add bitrate, start time and chapters video metadata to Inspector
- Fix backend BigInt conversion incorrectly using i32 instead of u32
- Change FFmpegFormatContext/FFmpegMetaData bit_rate to i64
- Rename byteSize to humanizeSize
- Expand humanizeSize logic to allow handling bits and Binary units
- Move capitalize to @sd/client utils

* Solving some issues

* Fix ffmpeg probe getting incorrect stream id and breaking database unique constraint
 - Fix humanizeSize breaking when receiving floating numbers
 - Fix incorrect equality in StatCard
 - Fix unhandled error in Dialog when trying to remove an unknown dialog

* fmt

* small improvements
 - Remove some unecessary recursion_limit directive
 - Remove unused app_image releated functions
 - Fix metadata query enabled flag

* Add migration for ffmpeg media data

* Fix cypress test

* Requested changes

* Implement feedback
 - Update locale keys for all languages
 - Add pnpm command to update all language keys

* Fix thumb reactivity in non indexed locations

---------

Co-authored-by: Ericson Soares <ericson.ds999@gmail.com>
Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
2024-05-09 02:20:28 +00:00
Vítor Vasconcellos
d4f74aecd0 Fix CI (#2461)
Use native-tls-vendored for reqwest
 - Update prisma-client-rust
 - Fix mock_instance test
 - Clippy + fmt
 - Improve error handling when uninstall i386 libs in setup-system action
2024-05-08 05:04:25 +00:00
Vítor Vasconcellos
29054e0f79 Remove AppImage logic and build system (#2446) 2024-05-04 22:27:14 +00:00
Utku
1762cb05d1 Alpha 0.2.12 (#2382)
* pnpm

* alpha 0.2.12

* make pnpm version non strict
2024-04-24 14:25:22 +00:00
Utku
5e2441282e Replace Appimage with deb (#2345)
* replace appimage with deb

* Update pnpm to 9.0.2 and lock CI version

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
2024-04-17 21:09:12 +00:00
Vítor Vasconcellos
b6f3f9ae70 Update pnpm to version 9 (#2341)
* Update pnpm to version 9

* Don't force python v3.11 in CI

* Ensure Cypress is installed

* ¯\_(ツ)_/¯
2024-04-17 06:16:18 +00:00
Vítor Vasconcellos
b48012751b Fix CI (due to python 3.12 update) + Fix migration CI check (#2306)
* Fix migration check not always failing when it should on main
 - Fix check due to Github using `refs/heads/gh-readonly-queue/main/` as ref when merging a PR from merge-queue to main
 - Add migration due to changes made in #2161

* Fix missing migration error message being showed when it shouldn't
 - Filter out empty migrations files from check testing if a migration is missing

* Prevent inner grep from failling the whole command
 - Fix last grep outputting gibberish when not receiving any file

* Fix xargs and grep command on macOS

* auto format

* Configure python 3.11 version on Github CI
 - Python 3.12 is the default on CI now, which breaks node-gyp and most of the native dependencies installations
 - Fix _new_migrations having lead and trailing spaces

* Remove migration, already included in #2302
2024-04-10 16:32:46 +00:00
Vítor Vasconcellos
c3d227eb9e CI now checks if a migration is missing (#2295)
* CI now checks if a migration is missing
 - Fail CI on main and tag releases if a new migration should be created due to changes in the db schema
 - Add error msg to schema.prisma file if a migration is not created to reflect changes made to db schema, but do NOT fail action

* Change schema to test CI changes

* Add debug to prisma generate CI script

* Removem prisma cache to test

* Fix grep for migrations

* Revert changes made for testing

* Only cache prisma data on main or cache-factory
2024-04-06 04:31:22 +00:00
Vítor Vasconcellos
1ceda29224 Make Cypress tests more resilient (#2249)
* Replace macos-14 with ubuntu runner in cypress
- Replace macos-14 with macos-13 runner in clippy
 - macos14 runner has weaker hardware than other runners: https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners#standard-github-hosted-runners-for-public-repositories

* Remove pre-installed incompatible packages from ubuntu runner

https://github.com/actions/runner-images/issues/9546#issuecomment-2014940361

* Use ubuntu-20.04 for Cypress CI

* Adjust Cypress CI to follow common steps for linux env

* Debug preprep script

* Fix copy/paste typo

* Install playwright native dependencies

* Update release.yml

* Add  Remove 32-bit libs to setup-system

* Change Cypress CI to macos-13
 - Some small test fixes
 - Fix onboarding test must skip testing default location screen if no default locations os available

* Back to ubuntu for Cypress and back to macos-14 to clippy
- Attempt to fix empty default locations on ubuntu CI runner

* Oops

* Install playwright native deps

* Replace path regexs with consts
 - Click on share minimum when doing a fastOnboarding

* Try macos-14 again
2024-03-28 22:45:25 +00:00
Utku
57156a729b Fix all the weird eslint warnings (#2245)
* actually fix the weird lint errors

* Prettier auto-format

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
2024-03-26 20:46:44 +00:00
Vítor Vasconcellos
2d345850b8 Make mobile tests more resilient (#2236)
* Attempt at making mobile tests more resilient

* Forgot shell property

* Remove debug flag from run-maestro-tests.sh

* Fix kill command

* Improve device emulator launch code
 - Remove maestro version lock (expo is not using it anymore on their repo)
 - Use some of the same command expo uses to ensure device emulator launched

* ...

* ...

* Make grep timeout less strict

* Increase timeouts

* Downgrade macOS and Xcode

Following Expo changes:
cb7c90dac4
2024-03-25 19:42:37 +00:00
Brendan Allan
525ed326a0 separate bundle and archive exts in artifact publisher (#2181)
* separate bundle and archive exts in artifact publisher

* actually build the damn action ffs
2024-03-08 05:31:27 +00:00
Vítor Vasconcellos
b9c190654d [ENG-1472] Frontend bug fixes and dependencies update (#2137)
* Fix onboarding sometimes not redirecting to Explorer on prod builds
 - Fix failure trying to compile landing prod builds outside Vercel
 - Fix Server docker failing to restart due to some incorrecting logic for creating the unprivileged users erroring out
 - Fix Storybook failing to build due to updates to Vite
 - Update Storybook dependencies
 - Remove unused Inter font dependency
 - Fix some incorrect references to NodeJS types inside web code
 - Fix $libraryId index using the incorrect redirect function
 - Improve error handling for the $libraryId index route
 - Fix Prism not being correctly loaded, and failing to register its plugins
 - Improve Prism loading error handling
 - Small improvement to the text highlight logic
 - Fix SCSS deprecation for untyped hsl values
 - Fix library query cache incorrectly saving empty values, which lead to the onboarding redirect bug
 - Patch contentLayer to fix an error during the final part of it's build process
 - Update most dev dependencies
 - Update publish-artifact to be compatible with new @actions/artifact
 - Fix issue with new vite-plugin-solid failing to build our .ts files due to the removal of the typescript plugin
 - Fix pnpm overrides not applying due to incorrect placement in package.json
 - Replace deprecated react-tsparticles and updated three used by the Bubbles background in the landing page
 - Rework Bubbles background to be compatible with new @tsparticles/react
 - Update @sd/config dependencies
 - Update @sd/scripts dependencies

* Implement suggestions
 - Replace mobile JS node setup with custom setup-pnpm action
 - Handle GITHUB_SECRET default value in code and throw a warning when it is not set
 - Fix pnpm now resolving the correct node version when building Spacedrive server docker
 - Add missing getent command to spacedrive server docker
 - Fix typo in entrypoint.sh
 - Implement a more robust check if the user is already in a group
 - Fix adduser failing due to missing default group
 - Disconnect IntersectionObserver on component unmount
 - Improve prism import comment

* Implement more suggestions
 - Pin genent version to latest stable release of UClibc
 - Add checksum checks for all ADD clauses in Spacedrive server Dockerfile

* Increase Maestro timeout to reduce CI failures due to slow simulator startup

* Dowgrade maestro to workaround CI timeout

* Improvements to the script that run maestro mobile tests
 - Increase the amount of retries for a maestro test run to 6
 - Increase Maestro driver startup timeout to 2 minutes

* Let run-maestro-tests.sh decide how to run itself

* ¯\_(ツ)_/¯
2024-02-28 23:52:24 +00:00
Vítor Vasconcellos
a0b7cf21fc Fix mobile CI + Some small CI improvements (#2113)
Fix mobile CI
 - Use rust envvars in all workflows
 - Use rust envvars and mold when build sd-server docker
2024-02-21 14:18:15 +00:00
Vítor Vasconcellos
c1e98dcb0d Update github actions due to nodejs 16 deprecation (#2107)
* Update github actions due to nodejs 16 deprecation
 - Replace archived actions-rs/clippy-check with maintained fork actions-rs-plus/clippy-check
 - Replace redhat-actions/push-to-registry with updated fork Eusebiotrigo/push-to-registry
 - Point redhat-actions/buildah-build and softprops/action-gh-release to current master to fix nodejs deprecation

* Build the correct ios core rust arch for CI runs

* Build ios app for the same arch as the host in Mobile CI

* Some changes to try and make cache-factory faster and avoid failing so much

* Add trigger to run cache-factory on pull requests when there are changes to itself

* Attempt to fix sed usage on macOS

* Don't treat warning as errors

* Fix windows

* Fix windows 2

* Use target ad cache key for rust to differentiate between macOS x86_64 and arm64

* Use faster/better linkers to compile for macOS, Linux and Windows

* Fix missing shell in action

* Fix typo

* Fix missing shell in action 2

* Fix mold download
 - Replace bsdtar with plain tar

* Fix permission denied when extracting mold

* Remove zld

* Don't restore cache for rustfmt
 - Remove target symlink to C:/ in an attempt to speed-up windows CI

* Fix typo

* Restore target symlink on windows
 - Removing it didn't make CI faster

* Run Mobile on macos-14
2024-02-21 09:27:40 +00:00
Brendan Allan
74a72dbbe2 separate cloud sync into sd-core-cloud-sync (#2025)
* separate cloud sync into sd-core-cloud-sync

* ci
2024-01-31 08:16:54 +00:00
Oscar Beaumont
369b38a392 Vite upgrades (#1911)
* Upgrade Vite + use SWC React plugin

* Upgrade to type module

* lazy load Sentry

* Lazy load prism

* fix

* Lazy load some of the icons

* fix types

* Fix eslint config

* run lint --fix

* Upgrade Turbo

* Turborepo not happy

* Upgrade Typescript

* Stop complaining Turborepo
2024-01-02 06:26:28 +00:00
Vítor Vasconcellos
4e555232c8 Pin rust to 1.73 (Workaround Internal Compiler Error) (#1796)
* Pin rust to 1.73
- Clippy fixes

* Don't install cargo-watch on CI
2023-11-17 22:47:06 +00:00
Vítor Vasconcellos
609e7e1228 Fix Windows CI (#1695)
* Add Nasm to setup.ps1
 - Nasm is now required to compile the `openssl-sys` crate

* Run Clippy CI when setup or prep scripts change

* Ensure nasm is also installed in Windows CI
 - Add nasm to setup.sh
 - Remove openssl-dev from setup.sh

* Ensure nasm is installed in macOS too

* Dumb ctrl+c/ctrl+v mistake

* 's/==/=/'
2023-10-29 00:25:26 +00:00
Vítor Vasconcellos
1181cd2709 Frontend misc fixes and deps update (#1650)
Dependencies overhaul
 - Update dependencies for all projects (except Mobile-only deps)
 - Remove unused dependencies from all projects (except Mobile-only deps)
 - Fix Storybook failing to import sd/ui style
 - Add Node 21 as not supported due to sass-loader not working on it yet
 - Add work-around for new rook version requiring webpack specific global property
 - Fix landing dev not working due to missing default env value on dev
 - Fix some incorrect uses of phosphor-icons non server side icons on server components on landing
 - Fix some incorrect uses of phosphor-icons server side icon on client components on landing
 - Fix landing fail to build on dev due to always required a Github Token to get the latest release
 - Fix new Next.js version not suporting Response.redirect due to immutable Headers
 - Add Gitlab as social link for teams page
 - Update Vítor's team photo
 - Add Vítor's twitter link
 - Fix some warning due to missing useEffect dependencies
 - Remove test-files dir
 - Fix QuickPreview unblurred buttons in Linux
 - Formatting
2023-10-24 07:51:58 +00:00
Brendan Allan
62a9eb0735 [ENG-1314] Re-enable cache factory on all main commits (#1608)
re-enable cache factory on all main commits
2023-10-18 04:22:41 +00:00
Brendan Allan
c8e1edd690 Smarter release workflow (#1525)
* js-based publish workflow

* don't create release if not using tag

* rename

* update lockfile

* remove unnecessary tsconfigs

* replace old publish action

* dumb

* esmodule moment

* glob files

* lockfile

* build app bundle

* Fix artifact upload hopefully

* upload artifacts from root

* skill issue ffs

* Use copy instead of move

* hopefully last one

* artifcats

* make .artifacts -_-

* ffs

* Make cp recursive, so it work with dirs

* build

* separate updater & standalone targets

* create draft release

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
2023-10-13 08:56:54 +00:00
Brendan Allan
af85ca95e9 [ENG-927, ENG-735, ENG-766] Fix Updater & Tauri 1.5 (#1361)
* custom updater with toasts

* new state management + updated router route

* tauri-specific update route

* ref

* update in prod only

* change 'Install' to 'Update'

* fix tsconfig

* desktop tauri

* remove tauri patch

* tauri 1.5

* tauri 1.5

* use tauri script

* native-deps

* Rework preprep and tauri script to better support tauri 1.5

* Update to tauri 1.5.1
 - Update workspace and apps/desktop dependencies
 - Fix mustache import, @types/mustache is not compatible with ES imports
 - Replace arm64 with aarch64 in machineID, they should be treated the same and this simplyfies the code

* Fix tauri updater not building due to missing key
 - Fix dmg background not being found
 - Generate an adhoc key for tauri updater with it is enabled and the user is doing a prod build

* Fix ctrl+c/ctrl+v typo

* Normalie @tanstack/react-query version through workspace
 - Use undici in scripts instead of global fetch
 - Fix typecheck

* Fix linux prod and dev builds
 - Improve error handling in tauri.mjs

* Normalize dev deps in workspace
 - Improve linux shared libs setup

* Fix CI and server docker

* Fix windows
 - Remove superfluous envvar

* Attempt to fix server, mobile, deb and release updater

* Attempt to fix deb and mobile again
 - Fix type on deb dependency
 - Enable release deb for aarch64-unknown-linux-gnu

* Github doesn't have arm runners
 - Fix typo in server Dockerfile

* Publish deb and updater artifacts

* remove version from asset name

* update commands

* log release

* Some logs on updater errors

* show updater errors on frontend

* fix desktop ui caching

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Ericson Fogo Soares <ericson.ds999@gmail.com>
2023-10-10 07:30:56 +00:00
Vítor Vasconcellos
f229877c4b [ENG-1054] libheif for Linux (plus fixes) + Webp update (#1405)
* Move postinstall script to a preprep script
 - Fix libheif crate failing to build with our libheif
 - Rework CI due to postinstall to preprep changes

* Linux heif build script + Update webp

* Fix ctrl+c/ctrl+v bug

* Improve libheif linux script
 - Add support for linux aarch64
 - Add CI workflow to build libheif for linux
 - Some other misc fixes

* Fix libheif CI requires sudo

* Fix wrong path for libheif build.rs override in Windows

* Fix wrong path manipulations in libheif build script

* 🤦

* Use ubuntu-latest in libheif action
 - Specify glib version in target triple to support old distros
 - Fix libheif artifact publishing

* Fix artifact upload path again

* Add musl support for libheif
 - Remove unused files from libheif artifact
 - Add setup logic for libheif in postinstall script

* Build libheif for linux as a shared lib

* Fix meson not building the correct arch
 - Add logic to get git branch from githubs CI env vars

* libheif finnaly works on linux
 - Make spacedrive binary rpath point to where appimage and deb expects our libs to be
 - Add some logic to tauri.js to convince tauri to bundle our shared libs
 - Work-around appimage bundling step breaking sometimes
 - Add logic to handle sigint in tauri.js to ensure we clean up after ourselves
 - Rename postinstall.mjs to setup.mjs
 - Add logic to setup.mjs to point our dev build to our shared libs in linux

* Fix windows dekstop dev
 - Rename setup.mjs to preprep.mjs

* test cache-factory

* Fix preprep script not parsing the cross compilation target triple and always using the host info to download dependencies
 - Fix action env vars not being correctly passed
 - Remove possibility to pass multiple targests to rust action

* Don't compile mobile crates on desktop targets

* Remove cache-factory pull_request trigger

* remove patched tauri cli

* Use git plumbing command to get remote branch name
 - Fallback to reading .git/HEAD if remote name was not retrieved

* fix type

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2023-10-03 17:31:33 +00:00
Vítor Vasconcellos
022d28db13 Change docs and CI scripts to use pnpm tauri command (#1421)
* Change docs and CI scripts to use `pnpm tauri` command
 - Fix documentation and some scripts to use the new tauri subcommand following https://github.com/spacedriveapp/spacedrive/pull/1411 changes
 - Format/Lint some files

* Document new envvar to lauch devtools alongside the desktop app
2023-10-03 08:10:55 +00:00
Vítor Vasconcellos
e06a49230a [ENG-265] Improve setup scripts (#1368)
* Setup script revamp

* Move toml to dev dep + CI runs the postinstall in debug mode

* Fix windows CI

* chmod +x scripts/setup.sh

* Fix eslint and ts CI

* Remove binstall + Fix trying to read input in CI

* Doesn't need to check pnpm and rust in CI

* Run postinstall script for Clippy CI

* Attempt to fix windows CI not running postinstall
 - Ignore cache when running postinstall on CI

* commited generated config.toml by mistake

* Pass GITHUB_TOKEN to `pnpm i`

* Update archive-wasm + Increase minimum node version to 18.17

* CI: Move rust setup after post-install script

* Revert: CI: Move rust setup after post-install script

* Fix CI, generate dummy cargo config.toml to fix prisma generation

* Fix windows CI

* CI: Fix wrong command

---------

Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
2023-09-28 10:03:46 +00:00
Utku
b6a069f78e Fixes release action (#1277)
* fix action

* updater artificats
2023-08-30 17:58:17 +00:00
Vítor Vasconcellos
712e0e7efc Fix Server CI running out of disk space (#1222) 2023-08-16 21:01:39 +00:00
Vítor Vasconcellos
b69fa845a5 [ENG-937] Work-around running out of space in GitHub CI for cache factory (#1158)
* Attmept to workaround Linux and Windows CI runners out-of-space problems

* Don't mix cmd and powershell

* bruh

* Attempt to fix prisma cache

* No need to cd, as the step is already in the correct cwd

* Leave enough room in root to install the necessary system packages

* Attempt to fix macOS cache being ovewritten

* Fix dumb mistake

* Up linux root free size to 6GB because
 - The cache action compress the data to root and it need more free space

* Remove pull_request trigger from cache_factory

---------

Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
2023-08-16 08:17:29 +00:00
Utku
7d40cb657e fix action (#1023) 2023-06-26 15:00:12 +00:00
Vítor Vasconcellos
fbaf6ab886 [ENG-811] Fix server Dockerfile + create CI workflow to build and publish docker image (#1012)
* Fix server docker build failing due to apt locking error
 - Replace ffmpeg dep with only the libav* and related required lib (reduce size)
 - Add warning to tauri build command when DMG background is missing
 - Minor rust fmt

* Enable assets feature for server Dockerfile
 - Fix web app not using the correct address in prod
 - Add build step for web assets in server Dockerfile

* Enable repository to be defined in server's Dockerfile
 - Enable server's release workflow to specify which repository to build to allow external PRs to work

* Fix pnpm docker cache not working
2023-06-25 15:16:11 +00:00
Utku
508a40eabd [ENG-734] Hide releases (#946)
* add a dummy check

* informative description

* change retention to 1 day
2023-06-15 05:30:10 +00:00
Oscar Beaumont
2f57665a87 [ENG-659] Spacedrive On Jamie's NAS (#866)
* serve dem

* 0% chance of working

* With a side of Vite plz

* no CI for now

* Clippy plz work

* undo

* bruh

* plz work
2023-05-29 10:47:59 +00:00
Brendan Allan
a58435a071 update prisma cache (#878) 2023-05-29 09:11:29 +00:00
Vítor Vasconcellos
a42bc63f5d Some misc fixes (#836)
* Fix setup-system breaking in macOS due to unavailable envvar
 - Remove unused docker build-arg from ffmpeg workflow
 - Fix Overview Explorer extending below inspector
 - Fix some left behind formatting problems

* Some more formatting
2023-05-20 04:36:35 +00:00