Commit Graph

1307 Commits

Author SHA1 Message Date
jelveh
45ecce4653 Update style.css 2024-11-11 20:49:49 -08:00
jelveh
a70cb49a30 tweak: style improvement 2024-11-11 17:31:43 -08:00
jelveh
27c01c9bd9 feat: Reaload App option in the window title bar context menu 2024-11-11 11:46:28 -08:00
KernelDeimos
a08e9758fe fix: groups manager location 2024-11-11 14:40:50 -05:00
jelveh
a9679910c6 Update style.css 2024-11-10 10:46:13 -08:00
KernelDeimos
402ffb0fd1 fix: don't show kvstore in usages 2024-11-10 13:33:41 -05:00
KernelDeimos
4f9d9a54ef fix: add missing id for task_manager menu item 2024-11-10 12:46:42 -05:00
Nariman Jelveh
6c44032293
fix: Update security.txt canonical URL 2024-11-10 08:55:51 -08:00
KernelDeimos
fc0cb2dde4 tweak: usage endpoint 2024-11-09 17:41:16 -05:00
KernelDeimos
85020109b3 dev: add virtual groups for computed permissions 2024-11-09 17:40:47 -05:00
KernelDeimos
a324c91560 dev: add quick window to see what groups a user is in
I need this for development/debugging purposes. I figure I may as well
start developing the system dialog we'll eventually have to create
rather than make a temporary debugging element. This window could
eventually become a full-featured group manager, and can easily be moved
to a settings tab.
2024-11-09 15:57:28 -05:00
KernelDeimos
59984bb930 dev: recursive log toggle for puter.js 2024-11-09 15:14:37 -05:00
KernelDeimos
6f5f11da09 dev: allow other backend services to set gui_params 2024-11-08 16:04:55 -05:00
jelveh
e8f67da9a3 fix: update apps cache by reading from primary db 2024-11-08 10:56:00 -08:00
KernelDeimos
164d5ef167 test: update TestKernel 2024-11-08 12:13:30 -05:00
KernelDeimos
28adcf533f feat(ai): add xAI grok-beta 2024-11-07 15:01:13 -05:00
KernelDeimos
d613c5fc83 log: when app is launched 2024-11-07 14:27:02 -05:00
KernelDeimos
5caa2c0e3a fix: logging in AppConnection 2024-11-07 14:26:30 -05:00
KernelDeimos
5d416e2316 refactor: simplify module constructors
This was a really small refactor - about 30mins - that moves the concern
of common constructor args for modules outside of each individual call.

A Context object is now used for common constructor arguments. Some of
the values on this object - such as APIOrigin and authToken - are
following values on the instance of the Puter class. This means that for
some modules it is already possible to eliminate the setAuthToken and
setAPIOrigin listeners (out of scope for this commit). Any which remain
could eventually be replaced with a listener on the Context object
itself.

This commit also moves the initSubmodules method to the top of the class
so that it's easier for new devs to find, in case they're looking into
an issue on a specific module rather than the Puter class itself.
2024-11-07 13:29:18 -05:00
jelveh
1a6d648a6e fix: persist clock visibility change 2024-11-05 18:31:03 -08:00
KernelDeimos
ba2eb716f5 dev: add prefix logger 2024-11-05 15:57:55 -05:00
KernelDeimos
da0022abf0 feat: add puter.auth.whoami() 2024-11-05 15:49:51 -05:00
KernelDeimos
755736edee feat: add puter.log 2024-11-05 15:31:44 -05:00
KernelDeimos
e71fe11e32 dev: add toggle logging, and fix issues in logger 2024-11-05 15:31:17 -05:00
KernelDeimos
b0cbcdf743 dev: add logger to putility 2024-11-05 15:03:21 -05:00
KernelDeimos
fe8d6af1b5 sync: update claude model (take 2) 2024-11-04 22:46:57 -05:00
KernelDeimos
52a54d2248 sync: update claude model 2024-11-04 22:28:34 -05:00
jelveh
9263cbaedd Merge branch 'main' of https://github.com/heyputer/puter 2024-11-04 17:33:13 -08:00
jelveh
9590bbdad1 fix: don't access metadata.credentialless if it doesn't exist 2024-11-04 17:33:08 -08:00
KernelDeimos
16b9f09e66 fix: reinitialize settings tabs for DOM events 2024-11-04 19:25:04 -05:00
KernelDeimos
856688f884 dev: add database and config access for extensions 2024-11-04 16:42:42 -05:00
jelveh
c44b9ab8d5 fix: use correct cursor when hovering over sidebar items 2024-11-04 10:08:11 -08:00
jelveh
79cff7ba29 Update style.css 2024-11-04 09:33:48 -08:00
jelveh
4e7979b50e Update style.css 2024-11-03 20:57:53 -08:00
jelveh
1056231004 feat: collapsible sidebar menu in Dev Center 2024-11-03 20:50:46 -08:00
jelveh
06d5dd763d tweak: dev center table visible when overflowing 2024-11-03 20:13:35 -08:00
jelveh
666912a8a3 revert style update 2024-11-03 17:20:09 -08:00
jelveh
452e3383e8 Update style.css 2024-11-03 17:18:12 -08:00
jelveh
05950b0fc3 tweak: automatically update sidebar_items every 2 seconds 2024-11-03 17:13:24 -08:00
jelveh
2e122c2cab Update style.css 2024-11-03 16:16:00 -08:00
jelveh
ff30de1d69 feat: customize the order of Explorer sidebar items 2024-11-03 16:00:39 -08:00
jelveh
121043d312 fix: issue with context menu divider item stealing the event from previous item 2024-11-02 18:54:30 -07:00
jelveh
0315cb3337 fix: issue with non-scrollable window body and document Context Menu 2024-11-02 17:51:07 -07:00
KernelDeimos
05573dad51 tweak: load mods from extensions directory 2024-11-01 19:29:16 -04:00
KernelDeimos
f836ac30a9 fix: temporary fix because .on can't call ensure_service 2024-11-01 18:21:05 -04:00
KernelDeimos
84989367a7 dev: hook extensions into service event bus 2024-11-01 17:42:12 -04:00
KernelDeimos
58f34b948a dev: simplify module/extension setup 2024-11-01 16:13:00 -04:00
KernelDeimos
7569e8a703 tweak: endpoints are authorized by default 2024-11-01 15:43:40 -04:00
KernelDeimos
4b6c70fa5e dev: expose more core definitions to extensions 2024-11-01 15:43:27 -04:00
KernelDeimos
a614145250 dev: run npm install after copying extensions 2024-11-01 15:26:39 -04:00
KernelDeimos
d958c01111 dev: add support for single-file extensions 2024-11-01 14:42:42 -04:00
KernelDeimos
3f6900f26b dev: add get() and post() to extension API 2024-11-01 14:41:29 -04:00
KernelDeimos
14d45a27ed feat: add extension API for modules
Allows modules to register a listener to the 'install' event without
creating a Module class. This changes how external modules are
installed.

External modules are now referred to as "extensions"; this commit does
not update the term but does use 'extension' as the name of the global.
2024-10-31 18:08:27 -04:00
KernelDeimos
9a0c5b4f74 dev: support no-response endpoints in Collector
The no_response option is added to Collector::post. If an endpoint
returns an empty response, this option must be set to avoid a JSON parse
error.
2024-10-30 18:52:47 -04:00
jelveh
dc478382fb tweak: don't break if contact_us is not found 2024-10-29 23:44:54 -07:00
jelveh
fc5e15f2a6 feat: first extension that implements a custom user options menu 2024-10-29 22:55:26 -07:00
jelveh
b018571a86 feat: add support for extensions 2024-10-29 18:37:32 -07:00
KernelDeimos
14f477a633 fix: Collector bug on undefined body 2024-10-29 18:56:11 -04:00
KernelDeimos
b9625945ae dev: expose save account and email confirm 2024-10-29 18:56:11 -04:00
KernelDeimos
463c96c69a fix: hyphenize_confirm_code bug 2024-10-29 18:56:11 -04:00
KernelDeimos
38adb5741b fix: app close issue in phoenix 2024-10-29 16:19:58 -04:00
KernelDeimos
b30de5bf78 fix: reading JSON string from service_usage_monthly
This was hilariously difficult to debug. This isn't the first time an
issue like this occurred; this happens because of a deviation between
mysql and sqlite, where a JSON-typed column in mysql will return as a
native object in queries, whereas a JSON-typed column in sqlite is a
string column and will therefore return as an un-parsed JSON string in
queries.
2024-10-29 13:18:53 -04:00
KernelDeimos
7ba16d1c21 fix: recently broke counting service sql 2024-10-28 19:14:15 -04:00
KernelDeimos
f1087953b5 fix: ignore invalid entries from service_usage_monthly 2024-10-28 19:09:17 -04:00
KernelDeimos
193da63304 fix: service usage screen
This fixes service monthly usage counts as shown in Settings.
2024-10-28 18:47:40 -04:00
KernelDeimos
c0b109d4d2 dev: add get_proxy_object to util/context 2024-10-28 15:11:26 -04:00
KernelDeimos
3649dff9aa dev: add module lib installation to useapi 2024-10-28 15:11:26 -04:00
jelveh
3d85edf537 Update UIWindow.js 2024-10-27 21:33:08 -07:00
jelveh
54ae69b7b7 feat: add an 'Upload' button at the bottom of OpenFilePicker 2024-10-27 21:32:39 -07:00
jelveh
cd8a080d72 tweak: user-friendly badges for apps in Dev Center 2024-10-27 21:09:18 -07:00
jelveh
af511c05e3 feat: Allow apps to toggle credentialless via Dev Center 2024-10-27 14:44:06 -07:00
KernelDeimos
4dc1e01682 fix: continue work on blocked_email_domains (2) 2024-10-27 15:46:21 -04:00
jelveh
161be7fe6b remove 'About' from taskbar apps 2024-10-26 09:56:57 -07:00
KernelDeimos
515051dabf fix: continue work on blocked_email_domains 2024-10-26 03:28:45 -04:00
KernelDeimos
c22a69ffb1 fix: errors thrown by launch_app
Fixes errors that were noticed being thrown by launch_app, specifically
in the branch of logic when launch_app is called NOT via ExecService.
This branch of logic was added to fix an issue where notepad wasn't
prompting to save unsaved changes on close because data-appusessdk was
not properly set to true. The fix still worked, despite throwing these
errors, because setting data-appUsesSDK to true is the first thing it
does. However, broadcast messages to apps launched with launch_app NOT
via ExecService would have been broken.
2024-10-26 03:07:02 -04:00
jelveh
a9bbcf908d Update style.css 2024-10-25 11:36:50 -07:00
KernelDeimos
f3a9e784a3 dev: add can iterate check 2024-10-25 14:27:42 -04:00
KernelDeimos
b98c5a349e dev: make anti-csrf more convenient 2024-10-24 23:11:07 -04:00
KernelDeimos
f55b7ac0b8 dev: ensure existing app tokens don't break (for now) 2024-10-24 19:54:29 -04:00
KernelDeimos
6b8fbda14c dev: allow app tokens to identify user sessions 2024-10-24 19:51:54 -04:00
KernelDeimos
bc51d4bd52 fix: notepad save issue 2024-10-24 02:28:19 -04:00
KernelDeimos
87f7fc0265 tweak: clarify blocked domain message 2024-10-24 00:57:21 -04:00
KernelDeimos
955b087297 feat: add config for blocked email domains 2024-10-24 00:38:40 -04:00
KernelDeimos
988039eade dev: src prop for images 2024-10-23 22:59:18 -04:00
KernelDeimos
25e9ed8227 dev: make el() yet more convenient 2024-10-23 01:08:16 -04:00
KernelDeimos
5965ab5de0 dev: allow UIElement to be used as settings tab 2024-10-22 23:55:42 -04:00
KernelDeimos
0bb80d2933 doc: add todo regarding /whoami 2024-10-22 21:54:48 -04:00
KernelDeimos
37bb98b965 dev(gui): add UIElement 2024-10-22 21:54:48 -04:00
jelveh
37aa2b1d06 tweak: improve the usage bar visibility 2024-10-22 17:39:38 -07:00
jelveh
4e8c7455aa tweak: Move clock settings to the 'Personalization' tab of 'Settings' 2024-10-22 17:18:16 -07:00
jelveh
6f702c3927 Going to /settings will open the Settings in full page mode 2024-10-22 16:46:06 -07:00
KernelDeimos
c6bc42f551 fix: height 100% on flexer and step view 2024-10-22 18:10:16 -04:00
KernelDeimos
368c20cf57 dev: updates and URL collector 2024-10-21 22:57:25 -04:00
KernelDeimos
12e0cecf02 fix: wait no 2024-10-21 18:12:08 -04:00
KernelDeimos
c8f913d710 fix: phoenix incorrect lookup order 2024-10-21 18:07:45 -04:00
ProgrammerIn-wonderland
891e799e5e WIP symlink, net_device virtio, move fixes, upload binary fixes 2024-10-21 17:04:57 -04:00
jelveh
13248a99bf feat: add support for fadeIn effect for UIWindow 2024-10-21 07:48:06 -07:00
jelveh
920a2f2427 tweak: make backdrop darker to increase focus on active window 2024-10-20 20:15:19 -07:00
KernelDeimos
60fdce9052 sync: put app-center in the taskbar 2024-10-20 20:30:35 -04:00
KernelDeimos
8b1a935c93 sync: developer is in /dist now 2024-10-20 20:30:11 -04:00
KernelDeimos
e0b9072129 fix: issue with service scripts that use TestView 2024-10-19 21:17:57 -04:00
Nariman Jelveh
90e7098cc7
Merge pull request #787 from 4nshuman/issue/zip-operation
Issue/zip operation
2024-10-19 15:45:39 -07:00
KernelDeimos
b5535ae3ca dev: add dev2 env 2024-10-19 18:22:09 -04:00
KernelDeimos
0fb4f73d76 chore: remove noisy logs 2024-10-19 17:31:46 -04:00
4nshuman
63b4da5be8 connected upload's inbuilt progress counter 2024-10-20 02:07:07 +05:30
4nshuman
fabc21ecf7 fixed sorting logic on directory list 2024-10-20 02:00:58 +05:30
4nshuman
a646b02e45 provide incremental directories to mkdir 2024-10-20 02:00:35 +05:30
jelveh
c29122c23f tweak: use different icons for system directories in the sidebar 2024-10-19 12:59:24 -07:00
4nshuman
4fdea7db66 offloaded write operations to Upload module 2024-10-20 00:06:30 +05:30
4nshuman
f32b1cfce8 added option to create parent directories for programmatic file drops 2024-10-20 00:05:40 +05:30
4nshuman
fc461c8735 added absolute file path processing 2024-10-20 00:04:36 +05:30
4nshuman
d39b7a8972 record unique directory list 2024-10-19 23:52:21 +05:30
jelveh
74baab49f4 tweak: improve welcome window footer link color 2024-10-19 10:35:56 -07:00
jelveh
564ff65363 feat: welcome screen to quickly explain what Puter is 2024-10-19 10:28:03 -07:00
KernelDeimos
480d996279 dev: proof-of-concept for fs postMessage relay
Adds a filesystem relay service to GUI-side which currently reports an
exmaple fsentry for /stat and /readdir. Added filesystem services for
both sides. Moved filesystem implementations from src/modules to src/lib
since they're being called by services now rather than modules.

This functionality is effectively disabled unless
src/puter-js/src/services/Filesystem.js is updated to use init_app_fs_()
when the environment is 'app'.
2024-10-19 03:46:47 -04:00
KernelDeimos
6e5d5c2021 dev: clone property descriptors in Context 2024-10-19 03:45:41 -04:00
KernelDeimos
c2a475f3c0 dev: lay the groundwork for client FS relay
Adds XDIncomingService to manage messages from another window. IPC now
registers with XDIncoming and reports whether it was handled, that way
messages intended to reach GUI can be reliably ignored.

On GUI-side, XDIncomingService will be used by FSRelayService (not yet
implemented) to handle requests for filesystem operations from another
window.

On App-side, XDIncomingService might be used by the PostMessageFS
client-side filesystem implementation terminal to listen for filesystem
events that were relayed by GUI (after a permission check) from their
original websocket source. Either that, or we'll open a filesystem
socket for each app using that app's token.

NoPuterYetService was added because IPC.js is loaded before
globalThis.puter exists, and was the easiest way to still allow IPC's
listener to be registered with XDIncomingService.

APIAccessService was added. This service currently holds auth_token and
api_token and does nothing else. FilesystemService listens to this to
maintain a websocket connection. APIAccessService will help to manage
the complexity of all further code dependent on being informed about
changes to the auth token or origin. Currently in puter.js these are
passed around to several modules which manage the same piece of state
information independantly.
2024-10-18 23:10:19 -04:00
KernelDeimos
bc5d09fe31 dev: hooks and sequencing functions for ServiceManager 2024-10-18 23:10:19 -04:00
jelveh
2f6f2b7d7c Set autoDedupe to true for creating new apps in Dev Center 2024-10-18 18:44:06 -07:00
KernelDeimos
143cfb5654 fix: 1954f8-related issue #2
mkdir operation was passing user instead if actor. I really think I
changed this already; getting a crazy deja-vu feeling about it. Maybe a
commit was lost somewhere along the road, but not sure.
2024-10-18 21:24:05 -04:00
jelveh
b1411cd622 Add dedupeName for to puter.apps and Dev Center 2024-10-18 18:02:37 -07:00
jelveh
8ed5db1734 Merge branch 'main' of https://github.com/heyputer/puter 2024-10-18 17:50:25 -07:00
jelveh
14fc963dd4 Show approval badges and lock in Dev Center 2024-10-18 17:48:14 -07:00
KernelDeimos
b9c157b28e tweak: start from 1 2024-10-18 20:48:09 -04:00
KernelDeimos
66e8b37f70 dev: add dedupe_name option for app creation 2024-10-18 20:42:41 -04:00
KernelDeimos
4ce2dccc76 dev: update app approved_for props visibility
Allows owner users to read the approved_for properties on their own apps
2024-10-18 20:12:19 -04:00
KernelDeimos
f5865daede fix: 1954f8-related issue
get-user-app-token was calling ll_mkdir with 'user' instead of 'actor'
2024-10-18 19:58:44 -04:00
KernelDeimos
1954f86680 fix(security): always use actor 2024-10-18 19:15:40 -04:00
KernelDeimos
94e15dbfa8 test: fix topics test and ServiceManager 2024-10-18 19:13:06 -04:00
jelveh
598a08ec45 Allow users to cancel a deploy operation before start 2024-10-18 16:07:01 -07:00
KernelDeimos
3c5d2af8c8 fix: small issue in Service.js 2024-10-18 15:53:40 -04:00
jelveh
29f5820129 Fix settings sidebar margin 2024-10-18 12:45:27 -07:00
KernelDeimos
fb1216d488 fix: prevent code from breaking just because it was bundled 2024-10-18 15:06:08 -04:00
KernelDeimos
7922314840 dev: add generic pub/sub system for use anywhere
Dispatching and listening to events is non-trivial. The apparent
triviality is in implementing a list of listeners and calling them. The
non-triviality is in the nature of what happens to a system when it has
multiple different interfaces to register listeners and publish events.

This commit adds TopicsFeature, which allows any class extending
AdvancedBase to declare topics. A topic is a simple pub/sub channel.
TopicsFeature will manage the state of listeners so the class doesn't
need to. A GC-friendly mechanism for detaching listeners is also provided.
2024-10-17 22:56:00 -04:00
KernelDeimos
9b1f1817f5 dev: move service interface to trait 2024-10-17 22:56:00 -04:00
KernelDeimos
273a51fc53 dev: add ServiceManager
The ServiceManager will replace manual management of services within
initgui, and will also be used within puter.js. Eventually Puter's
backend might use this instead of the existing Container class, although
this will be a large change that needs to be done incrementally.

The difference between ServiceManager and Container is the logic behind
when initialization occurs. Rather than have all services initialized at
once when Container's init() method is called, services are initialized
as soon as their dependencies have been initialized.
2024-10-17 22:56:00 -04:00
jelveh
2a81825a6b Update default apps in the Launch menu 2024-10-17 16:14:24 -07:00
KernelDeimos
7980aafbd9 doc: add devlog from puter.js 2024-10-17 01:19:06 -04:00
ProgrammerIn-wonderland
f0b7214a07 working persistence 2024-10-15 18:30:08 -04:00
ProgrammerIn-wonderland
aae6fff340 adding locking to puter-save 2024-10-15 18:30:08 -04:00
ProgrammerIn-wonderland
f0bc10f1e8 WIP persistence 2024-10-15 18:30:08 -04:00
KernelDeimos
1ea6d270f8 dev: add endpoint for GUI to query app file access 2024-10-15 16:19:11 -04:00
KernelDeimos
fd7bd339ca dev: add Context to putility 2024-10-15 16:17:37 -04:00
KernelDeimos
149684de01 dev: allow emulator app to access user files 2024-10-14 15:46:19 -04:00
KernelDeimos
9e88096e7e clean: remove a console.log 2024-10-14 15:19:52 -04:00
KernelDeimos
e011df1a20 move: PuterAPIFilesystem 2024-10-14 15:19:18 -04:00
KernelDeimos
6d23369512 sync: add new page 2024-10-14 12:18:04 -04:00
KernelDeimos
3762037576 dev: oops 2024-10-12 00:01:33 -04:00
KernelDeimos
11fbcb27b0 dev: cache readdir 2024-10-11 23:51:38 -04:00
KernelDeimos
77f6bdcd6d dev: make puter.fs cache togglable 2024-10-11 18:39:58 -04:00
KernelDeimos
6ee7caaee1 dev: apply TTL cache for stat entries
Adds CachedFilesystem layer to client filesystem chain. Currently only
stat is implemented. The stat implementation will hold onto an entry for
3 seconds as per hardcoded configuration. Eventually, once invalidation
via websockets is working, this TTL should be extended.
2024-10-11 18:39:58 -04:00
KernelDeimos
fc9a371e09 dev: add more to NariMethodsFeature 2024-10-11 18:39:58 -04:00
KernelDeimos
43c5402b7c feat(putility): trait method override support
Support for trait method overrides will make it possible to use putility
traits with the decorator pattern while using a proxy class to avoid
redundant re-implementation of proxy methods.

Use of the pattern described above will occur in the implementation of
client-side filesystem caching.
2024-10-11 18:39:58 -04:00
KernelDeimos
c12ae2a923 dev: prepare puter.js fs for decorator pattern
- de-coupled xhr callback passing from the interface of the underlying
  filesystem implementation.
- This makes the interface to delegate calls more suitable for use with
  the decorator pattern.
- The decorator pattern will be used to manage the complexity of the
  caching layer by separating the concerns of different caching methods.
2024-10-11 18:39:58 -04:00
ProgrammerIn-wonderland
4f8304ec15 switch ne2k_pci to virtio 2024-10-11 18:14:38 -04:00
ProgrammerIn-wonderland
d9805c0cab delete prompt-path 2024-10-11 17:06:32 -04:00
ProgrammerIn-wonderland
fb41d2a51c change PWD to not use prompt-path and fix unicode issues 2024-10-11 17:06:32 -04:00
KernelDeimos
010282edf2 fix: don't display all apps for extensionless files
This hides database entries with empty types from the list of suggested
apps for files that have no extension. These entries should also be
removed from the database and the bug causing them should be fixed in
dev center.
2024-10-11 14:51:52 -04:00
KernelDeimos
38dcb60d3f fix: creating app shortcut in self-hosted
For some reason ll_write has an undefined `actor` when clicking "Add
Shortcut to Desktop" from Dev Center. This should be investigated
further.
2024-10-11 14:50:35 -04:00
Nariman Jelveh
3157186f4f close #798 2024-10-10 17:40:17 -07:00
KernelDeimos
d4b96a17c8 dev: add RWLock to putility 2024-10-10 18:47:07 -04:00
KernelDeimos
37e7b6ad70 fix: disable thumbnails for AppData uploads 2024-10-10 15:03:22 -04:00
KernelDeimos
823ab28448 test: update test invocation 2024-10-10 03:19:28 -04:00
ProgrammerIn-wonderland
979bd06d70 9p automounting 2024-10-09 20:36:03 -04:00
ProgrammerIn-wonderland
b145e30a90 feat: v86 9p server support 2024-10-09 20:36:03 -04:00
Nariman Jelveh
d449367db5 Update loading.svg 2024-10-09 10:04:09 -07:00
Nariman Jelveh
9890e3a8be close #771 2024-10-08 19:51:57 -07:00
Nariman Jelveh
d0940ccd21 close #776 2024-10-08 18:59:14 -07:00
KernelDeimos
7f1b870d30 feat: support readdir for directory symlinks 2024-10-08 18:31:39 -04:00
KernelDeimos
c2a9506b48 fix: thumbnail service updates 2024-10-08 01:41:18 -04:00
ProgrammerIn-wonderland
ed0a83ca9d dev: update v86, switch twisp to epoxy-server with twisp feature 2024-10-07 22:04:41 -04:00
4nshuman
822d850513 purge JSZip 2024-10-06 21:25:46 +05:30
4nshuman
e252567c88 Added progress dialog details 2024-10-06 21:19:42 +05:30
4nshuman
f0f8e454f9 added Promises to handle multiple file creation and closing progress dialog 2024-10-06 20:27:12 +05:30
4nshuman
a09dd29416 added empty directory check and file creation 2024-10-06 20:25:40 +05:30
4nshuman
e992e4d5d4 unzipped directory creation 2024-10-06 20:25:10 +05:30
4nshuman
2a82579eb8 added unzip error handler 2024-10-06 20:23:10 +05:30
4nshuman
a79cc040e8 implemented fflate unzip operation 2024-10-06 20:22:50 +05:30
4nshuman
e5f0f46633 added blob to uInt8Array conversion 2024-10-06 20:22:07 +05:30
4nshuman
9a2e701683 eleminate JSZip invocation 2024-10-06 20:21:29 +05:30
4nshuman
00f2dbdcf0 added window hide delay config 2024-10-06 20:18:30 +05:30
4nshuman
b9d7a1d2a1 added zip support for empty directories 2024-10-06 17:33:30 +05:30
4nshuman
b9b8229099 fixed comments phrasing 2024-10-06 16:19:46 +05:30
4nshuman
5b477c2cac fixed module name 2024-10-06 16:10:40 +05:30
4nshuman
09d10cb29b rectified progress window for unzip operation 2024-10-06 16:03:09 +05:30
4nshuman
f6541fc793 convention implemented definition header 2024-10-06 16:01:18 +05:30
4nshuman
deb8c4e13b added status message terms 2024-10-06 16:00:01 +05:30
4nshuman
a93236118f redirected unzip to helper method 2024-10-06 15:32:31 +05:30
4nshuman
a9bebdd7f0 fixed typo 2024-10-06 15:26:26 +05:30
4nshuman
dfe71d5965 modified zipping operationand integrated fflate 2024-10-05 23:47:22 +05:30
4nshuman
f05f7454e9 added helper method to convert binary large object to uInt8Array for zipping operations 2024-10-05 23:45:54 +05:30
4nshuman
582c411c00 added fflate min js to the library 2024-10-05 23:44:04 +05:30
4nshuman
f3625ed907 added terms for status message on zip operation 2024-10-05 23:43:43 +05:30
4nshuman
4c7b75ed67 added fflate on static asset and libPath 2024-10-05 23:43:15 +05:30
4nshuman
1929aaf5ef added fflate on libPath on puter-gui 2024-10-05 23:42:43 +05:30
4nshuman
01aaa07e87 added zip progress counter configurations 2024-10-05 23:41:45 +05:30
KernelDeimos
c135649551 move: notes.md 2024-10-03 18:20:51 -04:00
KernelDeimos
196531d118 dev: update handling of duplicate emails 2024-10-03 17:04:47 -04:00
KernelDeimos
822f3b8c45 dev: add notes and some updates to email logic 2024-10-03 14:54:40 -04:00
KernelDeimos
2c3065a70f test: register test for CleanEmailService 2024-10-02 21:30:14 -04:00
KernelDeimos
054b9c2864 dev: add service for cleaning email addresses 2024-10-02 17:51:43 -04:00
KernelDeimos
9db55fc5f7 fix: remove redundant openai model fallback 2024-10-02 15:14:46 -04:00
KernelDeimos
29fd595cf9 dev: rootfs-v0.2.0 2024-10-02 15:13:57 -04:00
KernelDeimos
9985996686 fix: app pseudonym in wrong conditional block 2024-09-30 20:38:25 -04:00
KernelDeimos
4febd81169 dev: app pseudonyms 2024-09-30 19:35:34 -04:00
KernelDeimos
8bc4122bea tweak: change phoenix help text when launched with -c 2024-09-30 19:16:10 -04:00
KernelDeimos
5ed8823a16 tidy: remove a console log 2024-09-30 18:11:25 -04:00
KernelDeimos
5317adf8a4 feat: allow passing cli args via url 2024-09-30 18:09:28 -04:00
KernelDeimos
b6c0cb6abc feat: add -c flag for phoenix 2024-09-30 16:50:18 -04:00
KernelDeimos
6e1ed7ab04 dev: update emu load indicator 2024-09-30 16:50:03 -04:00
KernelDeimos
04c05a5bb8 fix: properly add owner object to fsentries 2024-09-27 16:30:13 -04:00
KernelDeimos
a70d0dd088 fix: add progress bar fix 2024-09-27 15:08:19 -04:00
KernelDeimos
eab2721f89 dev: use streaming decompression 2024-09-26 18:49:29 -04:00
KernelDeimos
545ac0097f tweak: ascii tux (important) 2024-09-26 18:28:13 -04:00
KernelDeimos
45cd3b79bb tweak: disable grace period by default 2024-09-26 15:47:47 -04:00
KernelDeimos
259877b677 fix: allow ETX to propagate to bash 2024-09-26 15:47:35 -04:00
KernelDeimos
08601ae2af feat: progress indicator for emulator 2024-09-25 23:47:10 -04:00
KernelDeimos
d0535cf10b dev: add wasm bench 2024-09-25 21:45:03 -04:00
KernelDeimos
fff8993200 fix: error deleting entry from My Websites window
This could not be tested locally due to another but only affecting
self-hosted installations. This will be tested in staging in the
meantime while the other bug is being fixed.
2024-09-23 17:55:54 -04:00
KernelDeimos
b1b725a2eb tweak: image from CDN (for real this time) 2024-09-23 15:07:26 -04:00
KernelDeimos
68c4274dc3 tweak: image from CDN 2024-09-23 14:54:01 -04:00
Nariman Jelveh
288411c377 Update style.css 2024-09-22 15:46:48 -07:00
KernelDeimos
27b66254e3 dev: compress default image with brotli 2024-09-22 17:49:00 -04:00
Nariman Jelveh
3ce8da37eb close #772 2024-09-22 12:40:38 -07:00
KernelDeimos
07d3592d88 tweak: don't auto-start puter-linux for now 2024-09-21 15:39:19 -04:00
Nariman Jelveh
bd91839551 Don't allow background processes to change the browser's URL 2024-09-19 17:41:37 -07:00
KernelDeimos
4311b482fd fix: second half of connectToInstance 2024-09-18 21:02:51 -04:00
KernelDeimos
cb324cc125 fix: error in process.handle_connection 2024-09-18 20:55:00 -04:00
KernelDeimos
f4dd195245 dev: fix previous commit 2024-09-18 17:04:48 -04:00
KernelDeimos
afc0ac8548 dev: attempt to fix process select issue 2024-09-18 17:01:02 -04:00
KernelDeimos
439653458e fix: quick patch to avoid columnify error 2024-09-18 16:22:26 -04:00
KernelDeimos
0456893789 dev: add emulator prod deployment 2024-09-18 16:21:07 -04:00
KernelDeimos
f2acd83b72 fix: upsert subdomain check to insert only 2024-09-18 16:21:07 -04:00
KernelDeimos
8aed3d9454 dev: prep for network build 2024-09-18 16:21:07 -04:00
KernelDeimos
25817bf6a2 dev: add puter-linux app to db migrations 2024-09-18 16:21:07 -04:00
KernelDeimos
4589ed95be dev: handle pty close
Return to phoenix shell when a pty stream is closed by twisp.

Pipes in phoenix with commands from the emulator do not appear to be
working properly, but something in there is working.
2024-09-18 16:21:07 -04:00
KernelDeimos
404fbaa4cb dev: add terminal multiplexing
This involves establishing the protocol through which phoenix instances
run a command on the emulator. The pty is able to communicate with the
terminal in both directions. This commit adds logs to be removed later.

There are a few things left that this commit does not address:
- handling close of delegate process
- handling sigint from phoenix to delegate process
- closing the connection to twisp
2024-09-18 16:21:07 -04:00
KernelDeimos
bc83e90e33 tweak: use virtualization-optimized kernel 2024-09-18 16:21:07 -04:00
KernelDeimos
e3d4a5f3b3 dev: multi-instance many-to-many app-to-app comms
I'll elaborate here because the commit name is confusing. Any time an
app gets a connection to another app, either because it launched that
app (or was launched by that app) or requested a connection to that app,
the ID the app gets to represent the app it's communicating with is now
a pseudo app id rather than the app instance ID. This accomplishes two
things:

1. It's more secure. There are multiple places where GUI assumes that
   knowing an app's instance ID means you can do things as that app.
2. Between the same two apps, there may now be more than one connection.
   This is useful for situations like Phoenix shell talking to the
   emulator in multiple separate instances to pipe commands. (this is
   coming later)
2024-09-18 16:21:07 -04:00
KernelDeimos
62634b0afe feat: add connectToInstance method to puter.ui 2024-09-18 16:21:07 -04:00
KernelDeimos
e2cb6194bb dev: add startup apps, start emulator by default 2024-09-18 16:21:07 -04:00
KernelDeimos
e1ec84877a dev: resize handling 2024-09-18 16:21:07 -04:00
KernelDeimos
db3e0b5ce8 fix: simplify callback listener and fix async bug 2024-09-18 16:21:07 -04:00
KernelDeimos
21383eec3c dev: get basic PTY integration working 2024-09-18 16:21:07 -04:00
KernelDeimos
28adc4e5d5 dev: add emulator page 2024-09-18 16:21:07 -04:00
KernelDeimos
2c0b8428c5 dev: add emulator image build 2024-09-18 16:21:07 -04:00
KernelDeimos
33de98107f fix: email change on account with unverified email
Changing the email address on an account that did not already have a
confirmed email would result in the email_confirmed column never being
set. This commit fixes that.

Additionally, an SQL statement using the unconfirmed email to identify a
row was changed so it now uses the user ID instead, which is safer.

Resolves: 759
2024-09-10 14:04:32 -04:00
KernelDeimos
6bdcae769d fix: double-echo in phoenix 2024-09-04 23:56:23 -04:00
KernelDeimos
a33d721e21 fix phoenix WINSZ handling 2024-09-04 23:56:23 -04:00
KernelDeimos
4910838ab1 fix: webpack error reporting + unintentional whitespace changes 2024-09-03 14:44:51 -04:00