flimkit 0.13.6__tar.gz → 0.13.7__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. {flimkit-0.13.6 → flimkit-0.13.7}/PKG-INFO +5 -29
  2. {flimkit-0.13.6 → flimkit-0.13.7}/README.md +4 -28
  3. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/roi_tools.py +1 -0
  4. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/_version.py +2 -1
  5. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit.egg-info/PKG-INFO +5 -29
  6. {flimkit-0.13.6 → flimkit-0.13.7}/LICENSE.md +0 -0
  7. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/__init__.py +0 -0
  8. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/assemble.py +0 -0
  9. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/batch.py +0 -0
  10. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/bg_tools.py +0 -0
  11. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/fit_tools.py +0 -0
  12. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/fitters.py +0 -0
  13. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/irf_tools.py +0 -0
  14. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/FLIM/models.py +0 -0
  15. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/GPU/__init__.py +0 -0
  16. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/GPU/_base.py +0 -0
  17. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/GPU/cuda.py +0 -0
  18. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/GPU/mlx_backend.py +0 -0
  19. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/GPU/mps.py +0 -0
  20. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/GPU/rocm.py +0 -0
  21. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/GPU/torch_backend.py +0 -0
  22. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/app_state.py +0 -0
  23. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/controller.py +0 -0
  24. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/expert_settings.py +0 -0
  25. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/fit_help.py +0 -0
  26. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/fov_preview.py +0 -0
  27. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/gui.py +0 -0
  28. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/icon.icns +0 -0
  29. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/icon.ico +0 -0
  30. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/icon.png +0 -0
  31. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/irf_widget.py +0 -0
  32. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/mode_controller.py +0 -0
  33. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/modes/__init__.py +0 -0
  34. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/modes/base.py +0 -0
  35. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/modes/batch_mode.py +0 -0
  36. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/modes/fov_mode.py +0 -0
  37. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/modes/irf_mode.py +0 -0
  38. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/modes/phasor_mode.py +0 -0
  39. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/modes/stitch_mode.py +0 -0
  40. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/phasor_panel.py +0 -0
  41. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/progress_window.py +0 -0
  42. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/project_panel.py +0 -0
  43. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/results_panel.py +0 -0
  44. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/UI/utils.py +0 -0
  45. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/__init__.py +0 -0
  46. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/cli.py +0 -0
  47. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/configs.py +0 -0
  48. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/dialogs.py +0 -0
  49. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/BH/__init__.py +0 -0
  50. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/BH/reader.py +0 -0
  51. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/BH/writer.py +0 -0
  52. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/ISS/__init__.py +0 -0
  53. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/ISS/fdflim.py +0 -0
  54. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/ISS/image.py +0 -0
  55. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/ISS/reader.py +0 -0
  56. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PS/__init__.py +0 -0
  57. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PS/reader.py +0 -0
  58. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PTU/__init__.py +0 -0
  59. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PTU/decode.py +0 -0
  60. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PTU/phu.py +0 -0
  61. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PTU/reader.py +0 -0
  62. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PTU/series.py +0 -0
  63. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PTU/stitch.py +0 -0
  64. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/PTU/tools.py +0 -0
  65. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/__init__.py +0 -0
  66. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/flim_file.py +0 -0
  67. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/phasor.py +0 -0
  68. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/formats/signal.py +0 -0
  69. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/image/tools.py +0 -0
  70. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/interactive.py +0 -0
  71. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/mpl_backend.py +0 -0
  72. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/phasor/__init__.py +0 -0
  73. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/phasor/filters.py +0 -0
  74. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/phasor/fret.py +0 -0
  75. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/phasor/interactive.py +0 -0
  76. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/phasor/peaks.py +0 -0
  77. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/phasor/signal.py +0 -0
  78. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/phasor_launcher.py +0 -0
  79. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/plugins/__init__.py +0 -0
  80. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/plugins/bindings.py +0 -0
  81. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/plugins/builtin/__init__.py +0 -0
  82. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/plugins/builtin/core_tools.py +0 -0
  83. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/plugins/loader.py +0 -0
  84. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/plugins/registry.py +0 -0
  85. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/project.py +0 -0
  86. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/synth.py +0 -0
  87. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/__init__.py +0 -0
  88. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/apply_settings.py +0 -0
  89. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/batch_fit.py +0 -0
  90. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/config_manager.py +0 -0
  91. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/config_snapshot.py +0 -0
  92. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/crash_handler.py +0 -0
  93. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/display.py +0 -0
  94. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/enhanced_outputs.py +0 -0
  95. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/fancy.py +0 -0
  96. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/lifetime_image.py +0 -0
  97. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/misc.py +0 -0
  98. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/ome_zarr.py +0 -0
  99. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/plotting.py +0 -0
  100. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/roi.py +0 -0
  101. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/session.py +0 -0
  102. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/update_check.py +0 -0
  103. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/xlsx_tools.py +0 -0
  104. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit/utils/xml_utils.py +0 -0
  105. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit.egg-info/SOURCES.txt +0 -0
  106. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit.egg-info/dependency_links.txt +0 -0
  107. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit.egg-info/entry_points.txt +0 -0
  108. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit.egg-info/requires.txt +0 -0
  109. {flimkit-0.13.6 → flimkit-0.13.7}/flimkit.egg-info/top_level.txt +0 -0
  110. {flimkit-0.13.6 → flimkit-0.13.7}/pyproject.toml +0 -0
  111. {flimkit-0.13.6 → flimkit-0.13.7}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flimkit
3
- Version: 0.13.6
3
+ Version: 0.13.7
4
4
  Summary: Fluorescence lifetime imaging analysis: reading, fitting, phasors and stitching
5
5
  Author-email: Alex Hunt <alexander.hunt@ed.ac.uk>
6
6
  License-Expression: MIT
@@ -133,45 +133,21 @@ python install.py --dev
133
133
 
134
134
  ## Docker / TrueNAS SCALE
135
135
 
136
- A pre-built image is available on Docker Hub. It runs FLIMKit with the [web UI](https://github.com/FLIMKit/flimkit-web-ui), so the whole app is used from a browser with nothing installed on the client.
137
-
138
- **Pull and run:**
136
+ Pre-built images are on Docker Hub as `alex1075/flimkit`. They run FLIMKit with the [web UI](https://github.com/FLIMKit/flimkit-web-ui), so the whole app is used from a browser with nothing installed on the client.
139
137
 
140
138
  ```bash
141
139
  docker run -d \
142
140
  -p 14500:14500 \
143
141
  -e FLIMKIT_PASSWORD=choose-a-password \
144
142
  -v /path/to/your/data:/data \
145
- -v /path/to/flimkit-config:/root/.flimkit \
143
+ -v /path/to/flimkit-config:/config \
146
144
  --name flimkit \
147
145
  alex1075/flimkit:latest
148
146
  ```
149
147
 
150
- Then open **http://localhost:14500** and log in as `flimkit` with that password. Put PTU files and data in the folder you mount to `/data` and use the Browse buttons in the page to navigate there. The config mount keeps expert settings, preferences and recent files when the container is recreated.
151
-
152
- | Variable | Default | Effect |
153
- |---|---|---|
154
- | `FLIMKIT_PASSWORD` | not set | Password for the web UI (user `flimkit`) and for the desktop view. Without it, anyone who can reach the port can use FLIMKit and browse `/data`. |
155
- | `FLIMKIT_DESKTOP` | `0` | Set to `1` to also serve the full desktop through noVNC on port 14501, for the few windows the web UI does not cover. Publish that port too. |
156
- | `FLIMKIT_GEOMETRY` | `1440x900` | Size of the virtual screen FLIMKit draws on |
157
- | `TZ` | `Etc/UTC` | Time zone for log timestamps |
158
-
159
- The container reports healthy once the web UI answers on `/healthz`.
160
-
161
- **TrueNAS SCALE (Custom App):**
162
-
163
- 1. Apps → Discover Apps → Custom App
164
- 2. Paste the contents of `docker/docker-compose.yaml` from this repo
165
- 3. Edit the volume paths to match your pool (e.g. `/mnt/tank/microscopy:/data`) and uncomment `FLIMKIT_PASSWORD` with a password of your own
166
- 4. Deploy - TrueNAS will pull the image automatically
167
-
168
- **Build from source** (required if you want to push your own changes):
169
-
170
- ```bash
171
- python docker/build_docker.py # builds linux/amd64, pushes to Docker Hub
172
- ```
148
+ Then open http://localhost:14500 and log in as `flimkit` with that password.
173
149
 
174
- Requires Docker Desktop with buildx. On Apple Silicon, buildx cross-compiles for `linux/amd64` automatically.
150
+ The images are built in [flimkit-docker](https://github.com/FLIMKit/flimkit-docker), which lists the tags (Cellpose, CUDA, ROCm, the noVNC desktop and the headless bridge images), the settings, the compose file for a TrueNAS SCALE custom app, and how to build one yourself.
175
151
 
176
152
  ## Usage
177
153
 
@@ -71,45 +71,21 @@ python install.py --dev
71
71
 
72
72
  ## Docker / TrueNAS SCALE
73
73
 
74
- A pre-built image is available on Docker Hub. It runs FLIMKit with the [web UI](https://github.com/FLIMKit/flimkit-web-ui), so the whole app is used from a browser with nothing installed on the client.
75
-
76
- **Pull and run:**
74
+ Pre-built images are on Docker Hub as `alex1075/flimkit`. They run FLIMKit with the [web UI](https://github.com/FLIMKit/flimkit-web-ui), so the whole app is used from a browser with nothing installed on the client.
77
75
 
78
76
  ```bash
79
77
  docker run -d \
80
78
  -p 14500:14500 \
81
79
  -e FLIMKIT_PASSWORD=choose-a-password \
82
80
  -v /path/to/your/data:/data \
83
- -v /path/to/flimkit-config:/root/.flimkit \
81
+ -v /path/to/flimkit-config:/config \
84
82
  --name flimkit \
85
83
  alex1075/flimkit:latest
86
84
  ```
87
85
 
88
- Then open **http://localhost:14500** and log in as `flimkit` with that password. Put PTU files and data in the folder you mount to `/data` and use the Browse buttons in the page to navigate there. The config mount keeps expert settings, preferences and recent files when the container is recreated.
89
-
90
- | Variable | Default | Effect |
91
- |---|---|---|
92
- | `FLIMKIT_PASSWORD` | not set | Password for the web UI (user `flimkit`) and for the desktop view. Without it, anyone who can reach the port can use FLIMKit and browse `/data`. |
93
- | `FLIMKIT_DESKTOP` | `0` | Set to `1` to also serve the full desktop through noVNC on port 14501, for the few windows the web UI does not cover. Publish that port too. |
94
- | `FLIMKIT_GEOMETRY` | `1440x900` | Size of the virtual screen FLIMKit draws on |
95
- | `TZ` | `Etc/UTC` | Time zone for log timestamps |
96
-
97
- The container reports healthy once the web UI answers on `/healthz`.
98
-
99
- **TrueNAS SCALE (Custom App):**
100
-
101
- 1. Apps → Discover Apps → Custom App
102
- 2. Paste the contents of `docker/docker-compose.yaml` from this repo
103
- 3. Edit the volume paths to match your pool (e.g. `/mnt/tank/microscopy:/data`) and uncomment `FLIMKIT_PASSWORD` with a password of your own
104
- 4. Deploy - TrueNAS will pull the image automatically
105
-
106
- **Build from source** (required if you want to push your own changes):
107
-
108
- ```bash
109
- python docker/build_docker.py # builds linux/amd64, pushes to Docker Hub
110
- ```
86
+ Then open http://localhost:14500 and log in as `flimkit` with that password.
111
87
 
112
- Requires Docker Desktop with buildx. On Apple Silicon, buildx cross-compiles for `linux/amd64` automatically.
88
+ The images are built in [flimkit-docker](https://github.com/FLIMKit/flimkit-docker), which lists the tags (Cellpose, CUDA, ROCm, the noVNC desktop and the headless bridge images), the settings, the compose file for a TrueNAS SCALE custom app, and how to build one yourself.
113
89
 
114
90
  ## Usage
115
91
 
@@ -754,6 +754,7 @@ class RoiAnalysisPanel:
754
754
  region_obj['statistics'] = stats
755
755
  key = tuple(sorted(result.get('region_ids', [result['region_id']])))
756
756
  self._last_fit_results[key] = result
757
+ self.fov_preview._save_regions_update()
757
758
  self._refresh_region_list()
758
759
  self._show_roi_fit_result(result)
759
760
  self.run_with_progress(
@@ -1,4 +1,4 @@
1
- __version__ = '0.13.6'
1
+ __version__ = '0.13.7'
2
2
  fitter_version = '21'
3
3
 
4
4
  roadmap = '''Flim program roadmap:
@@ -45,5 +45,6 @@ Need to add Phasor once added to the codebase, and update version to 1.0. And ad
45
45
  0.13.4 -> the desktop GUI no longer dies on a Tk 9 interpreter when the Sun Valley theme fails to load. Tk 9 on macOS queues an idle handler when a root window is created and does not cancel it when that root is destroyed, so the fallback path, which threw the themed root away and built a second one, segfaulted inside showRootWindow on the first update_idletasks rather than opening a window. The fallback now reuses the root the themed attempt had already built, clearing its children, because only the theme had failed and the window itself was sound. Tk 8.6 survived the destroy and rebuild, which is why this only showed up on a fresh install. No fitted number changes, so fitter_version stays at 20.
46
46
  0.13.5 -> the Docker images serve FLIMKit through flimkit-web-ui instead of streaming the desktop over noVNC. Port 14500 opens the web page, which drives the same Tk window on the virtual display, so a TrueNAS app keeps its address. FLIMKIT_PASSWORD protects the page with HTTP Basic authentication, the noVNC desktop stays available behind FLIMKIT_DESKTOP=1 on port 14501, and the images gain a /healthz health check. docker-compose.yaml mounts the config at /root/.flimkit, where FLIMKit reads it, rather than at /config, which nothing read. No fitted number changes, so fitter_version stays at 20.
47
47
  0.13.6 -> Apply fit settings copies one file's fit and display settings to the others in a project, and the intensity image gets its own range and colormap controls. Z-stack and timelapse fits apply the fit window, exclusion bands, IRF shift bound and binning from Expert Settings and the CLI, which they used to ignore, so fitter_version goes to 21; fits with the defaults are unchanged. Phasor sessions keep their cursors, polygons and filter across a reload instead of being overwritten, a default machine IRF can be set in Preferences, OME-TIFF export keeps photon counts, and plugin phasor filters appear in Phasor Analysis. The documentation gains a step-by-step guide and a page per add-on.
48
+ 0.13.7 -> Fit ROI Decay saves its result to the session file as soon as it finishes; the lifetimes it wrote into a region used to be lost if FLIMKit closed before something else saved the session. The guide says what an ROI re-fit uses, and the QuPath extension installs from its catalog. No fitted number changes, so fitter_version stays at 21.
48
49
  1.0.0 -> release version with all core features implemented and tested
49
50
  1.5.0 (or 2.0) -> validation of fitting results with known fluorophores.'''
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flimkit
3
- Version: 0.13.6
3
+ Version: 0.13.7
4
4
  Summary: Fluorescence lifetime imaging analysis: reading, fitting, phasors and stitching
5
5
  Author-email: Alex Hunt <alexander.hunt@ed.ac.uk>
6
6
  License-Expression: MIT
@@ -133,45 +133,21 @@ python install.py --dev
133
133
 
134
134
  ## Docker / TrueNAS SCALE
135
135
 
136
- A pre-built image is available on Docker Hub. It runs FLIMKit with the [web UI](https://github.com/FLIMKit/flimkit-web-ui), so the whole app is used from a browser with nothing installed on the client.
137
-
138
- **Pull and run:**
136
+ Pre-built images are on Docker Hub as `alex1075/flimkit`. They run FLIMKit with the [web UI](https://github.com/FLIMKit/flimkit-web-ui), so the whole app is used from a browser with nothing installed on the client.
139
137
 
140
138
  ```bash
141
139
  docker run -d \
142
140
  -p 14500:14500 \
143
141
  -e FLIMKIT_PASSWORD=choose-a-password \
144
142
  -v /path/to/your/data:/data \
145
- -v /path/to/flimkit-config:/root/.flimkit \
143
+ -v /path/to/flimkit-config:/config \
146
144
  --name flimkit \
147
145
  alex1075/flimkit:latest
148
146
  ```
149
147
 
150
- Then open **http://localhost:14500** and log in as `flimkit` with that password. Put PTU files and data in the folder you mount to `/data` and use the Browse buttons in the page to navigate there. The config mount keeps expert settings, preferences and recent files when the container is recreated.
151
-
152
- | Variable | Default | Effect |
153
- |---|---|---|
154
- | `FLIMKIT_PASSWORD` | not set | Password for the web UI (user `flimkit`) and for the desktop view. Without it, anyone who can reach the port can use FLIMKit and browse `/data`. |
155
- | `FLIMKIT_DESKTOP` | `0` | Set to `1` to also serve the full desktop through noVNC on port 14501, for the few windows the web UI does not cover. Publish that port too. |
156
- | `FLIMKIT_GEOMETRY` | `1440x900` | Size of the virtual screen FLIMKit draws on |
157
- | `TZ` | `Etc/UTC` | Time zone for log timestamps |
158
-
159
- The container reports healthy once the web UI answers on `/healthz`.
160
-
161
- **TrueNAS SCALE (Custom App):**
162
-
163
- 1. Apps → Discover Apps → Custom App
164
- 2. Paste the contents of `docker/docker-compose.yaml` from this repo
165
- 3. Edit the volume paths to match your pool (e.g. `/mnt/tank/microscopy:/data`) and uncomment `FLIMKIT_PASSWORD` with a password of your own
166
- 4. Deploy - TrueNAS will pull the image automatically
167
-
168
- **Build from source** (required if you want to push your own changes):
169
-
170
- ```bash
171
- python docker/build_docker.py # builds linux/amd64, pushes to Docker Hub
172
- ```
148
+ Then open http://localhost:14500 and log in as `flimkit` with that password.
173
149
 
174
- Requires Docker Desktop with buildx. On Apple Silicon, buildx cross-compiles for `linux/amd64` automatically.
150
+ The images are built in [flimkit-docker](https://github.com/FLIMKit/flimkit-docker), which lists the tags (Cellpose, CUDA, ROCm, the noVNC desktop and the headless bridge images), the settings, the compose file for a TrueNAS SCALE custom app, and how to build one yourself.
175
151
 
176
152
  ## Usage
177
153
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes