Commit Graph

  • 7bb562a16a Merge remote-tracking branch 'refs/remotes/origin/main' neon443 2025-06-29 11:29:37 +01:00
  • 4ca3bc035f Awdjfghkahdsgjf;h id and name were swapped loll switch back to icloud defaults for hostsmanager update xcode* themes to camel case neon443 2025-06-29 11:15:22 +01:00
  • 331b21b23f improve is theme selected gave all builtin themes uuids neon443 2025-06-29 10:49:52 +01:00
  • a4d245caec !!!!!!!!!! fixed selecting themes - it now actually remembers!! fix all themes having no names fix remembering selected themes added toTheme to return a theme from a themecodable removed themeNames - its not needed as the names are saved in the ThemeCodable itself extracted colorcodable and themecodable into their own files removed all the debug prints neon443 2025-06-29 10:43:47 +01:00
  • 834fb266e9 theme picker ui is pretty now added a bunch of builtin htemes applytheme takes a theme added builtin themes enum added decodeloacltheme func added builtinthemes array property selectedtheme is now an actual theme instead of an index its really annoying it doesnt really work rn neon443 2025-06-29 09:59:53 +01:00
  • 6915d8b665 Update README.md Nihaal Sharma 2025-06-29 09:10:14 +01:00
  • f19f32682f added selecting and applying themes added selectTheme to set the selectedtheme index added isthemeselected to check if a theme is selected applytheme takes an index now neon443 2025-06-28 16:06:11 +01:00
  • 0f3f936638 Merge remote-tracking branch 'refs/remotes/origin/main' neon443 2025-06-28 15:44:41 +01:00
  • 4affc532d9 fix adding new hosts, it will navigate u to a new connection view with a host.blank, and add the host if it doesnt exist added addhostifneeded extracted hostskeys stuff to hostkeysview added nav titles to everything removed tabs, now just a list renamed savedHosts -> hosts neon443 2025-06-28 15:37:50 +01:00
  • 7ceef899df fix duplicate ssh keys in keys, now shows the hosts that use that key if u tap on it added theme deletion added animations on change of themes list getkeys doesnt return duplicates, thanks to: wrote a custom == operator to check if keys are the same, ignoring uuid added gethostskeysusedon to get the hosts that use a key fix refreshing of hosts on modification added cancel to import alert neon443 2025-06-28 14:59:59 +01:00
  • 830192144d add README.md Nihaal Sharma 2025-06-28 13:19:15 +01:00
  • d0c84b19f4 added renaming themes gonna add delete themes next neon443 2025-06-27 21:45:09 +01:00
  • a607996ca5 fixed ui clipping made the radius concentric and the padding perfect neon443 2025-06-27 21:20:27 +01:00
  • 3698232a51 added thememanager view and thempreviw it uses a lazyhgrid neon443 2025-06-27 20:48:41 +01:00
  • c343066fb5 make decodeTheme cleaner, still works yayyy neon443 2025-06-27 18:27:10 +01:00
  • 338957e986 theme loading works!! before i tried decoding the entire array when it expected one theme lol neon443 2025-06-27 18:25:16 +01:00
  • d33b7d4eaf added downloadtheme funciton to download and import a theme from an iterm2colorschemes.com link added import theme to import a theme updated loadthemes updated themesview to add import buttons and updated the view fix themesview making a new instance of hostsmanager added suiColor to get a swiftui color from a swiftterm color fix uicolor returning black all the time neon443 2025-06-27 18:01:27 +01:00
  • 56289f0f6d added themes to hostsmanager added loadthemes added savethemes theme is now identifieable theme has a computed property themecodable to make it easier to convert extended swiftterm.color to have a colorCodabel property adding themes amanger ui neon443 2025-06-27 10:59:53 +01:00
  • f14492d3fe added applyTheme() function added SwiftTerm.Color.uiColor extension to get a UIColor from SwiftTerm.Color rename SSHTerminalView to SSHTerminalDelegate neon443 2025-06-27 10:38:03 +01:00
  • 73282fa65d adding theme support!! looking at swiftermapp, it uses string splitting to parse a plist of colours i couldnt be asked to do this, so i made my own codable types and non codable types to automatically parse the plist lol anyways might merge the Codable and non codabel types later, but i thik it works now so im leaving it as is rn moved scrollback restore funcito higher neon443 2025-06-27 10:29:53 +01:00
  • b59c52f239 remove the bell emoji, just the flat one for now neon443 2025-06-27 09:20:04 +01:00
  • b43d92e2d5 remove print neon443 2025-06-26 16:36:45 +01:00
  • 4d10245569 1.2 neon443 2025-06-26 16:32:08 +01:00
  • 09fd4a10fd YESSS ok so now you can minimize an ssh session - it will remember the scrollback, - if u uminimixe it and then reconnect, it works it uses a shared static var in TerminalViewContainer to keep SSHTerminal instances scrollback restoration works and everything neon443 2025-06-26 16:25:35 +01:00
  • 747406df5d asdfasdfasdf neon443 2025-06-26 15:50:25 +01:00
  • c6699a9818 implement scrollback saving implement a scrollback cap of 10MiB add prettyscrollback() to return kib, mib etc tried a different resuming thingy neon443 2025-06-26 15:46:58 +01:00
  • f082d8b77c tried to implement resuming neon443 2025-06-26 15:03:59 +01:00
  • 84b0b3cc7a vbump neon443 2025-06-26 13:53:37 +01:00
  • bb0ea0f9ee added animated screen flash for bell screen will flash with a semi transparent white overlay and a bell emoji for 250ms remove bell from nav bar, too distracting with the bell in the muiddle as well neon443 2025-06-26 13:53:18 +01:00
  • a41edbb1aa added bell - the title will show a bell emoji if the bell has been rung for 0.2s fix massive memory leak :cry it liteally got to 10gigs :wilt fixed cpu usage - 90+% lower neon443 2025-06-26 13:38:06 +01:00
  • 061d6d54d2 bump neon443 2025-06-26 13:16:39 +01:00
  • de213c0d72 remove the minimize button neon443 2025-06-26 13:16:14 +01:00
  • 98e5b01970 center text fix alignment comment out ssh_free fix Face ID appearing on touch id devices neon443 2025-06-26 13:12:33 +01:00
  • 0291c3c613 vbump neon443 2025-06-26 12:49:54 +01:00
  • 51459f1839 fix crash when disconnecting, fix close terminal on exit neon443 2025-06-26 12:49:27 +01:00
  • 319373682c simlplify read from channel loop main thread ui updates in disconnect() neon443 2025-06-26 12:32:18 +01:00
  • 42883c4ac9 ok so looking at SwiftTermApp (SwiftTerm's sample app) it uses a specific commit. surprise surpries, that fixes the ghosting and scroll issues!!!!!!!!!! this deserves a version bump neon443 2025-06-26 11:35:14 +01:00
  • d9154458fa made read blocking, adnd up to 1024 bytes request env vars before opeing shell cleanup neon443 2025-06-26 11:32:45 +01:00
  • e8ca091d0d move neon443 2025-06-26 10:55:02 +01:00
  • d213ce2c05 fix symbol not updating on the fly but everything else does added automatic string to data conversion for pubkey renamed symbol to hostsymbol reduce padding neon443 2025-06-26 10:31:15 +01:00
  • 5e0908206c fix picker but making it a cusotm one fix symbol preview not updating undo change to simplify symbolpreview add hashable to host neon443 2025-06-26 10:16:53 +01:00
  • 58596905d7 fix picker and add preview with text simplified symbolpreview args to just a host neon443 2025-06-26 10:02:22 +01:00
  • 642e4a78de added symbols and labels added makeLabel() to return a string for the host, in order: name, address, uuid added reorder sypport added movehost() to reorder added symbolpreview view to easilty show the symbol and label added symbol with sf, iscustom, offset vars to help added a picker to choose the symbol neon443 2025-06-26 09:54:54 +01:00
  • 58f4388168 added duplicate host swipe action moved logic for dleting hosts into the hostsmanager added host "name" textbox added host "name" in keys view neon443 2025-06-25 17:38:02 +01:00
  • 52629d7654 bump version neon443 2025-06-25 17:19:33 +01:00
  • 76601e0470 made more funcitons throw errors instead of just return, more informative added name to host removed hostkey from connectionview as its in keys now fix crash on force unrap in keypair navigatoin labels added hostinvalid() to check if the host is invalid added case notconnected for keyerror openshell is throwing moved stuff round neon443 2025-06-25 17:17:47 +01:00
  • 2548dde85b added keydetail view added faceid authentication to view private keys added authwithbiometrics for secure displaying of sensitive data fix getkeys returns nothing added centredlabel (hstack with two spacers) made keypair identifieable fix alignment of text neon443 2025-06-25 16:46:41 +01:00
  • d4b9a4e2ae added keypair protocol added bell support added getkeys added ui to show hostkeys all in one place neon443 2025-06-25 15:49:36 +01:00
  • 895e37133e bump version neon443 2025-06-25 14:13:27 +01:00
  • 2207c5d924 upon accepting the new hostkey, you connect neon443 2025-06-25 14:12:41 +01:00
  • 548beca410 updated gethostkey to work with strings, and the rest of the ui had been updated to reflect this neon443 2025-06-25 14:07:27 +01:00
  • 43b407b038 removed lots of testsucceeded = false by just setting it as false and then making it true if it suceeds added connecition failed and authfailed sshstates fix crash when unwrapping the hostkey data to a string neon443 2025-06-25 13:47:07 +01:00
  • 046dbbb06c fix more concurrency free session if connection failed read only once in testexec unique names for key filenmaes free pubkeys even if it fails to auth fix bitmask reading of auth methods remove handler.state from the terminal, put it inline with other status indicators neon443 2025-06-25 13:17:38 +01:00
  • 058915b115 removed lots of conurrency its prob not needed tbh neon443 2025-06-25 13:06:07 +01:00
  • 46ba88aacb addedfunctions to check state large code cleanup thanks to this neon443 2025-06-25 12:40:16 +01:00
  • 66547dc58e migrated from bunch of bools to an enum of ssh states neon443 2025-06-25 12:26:29 +01:00
  • e8494b9296 improve disconnection on testexec - it disconnects right after testing exec! - it saves the result of tesetexec even tho disconnect clears it - moved the logic into sshhandler neon443 2025-06-25 12:00:49 +01:00
  • 5d80c69152 fixed getAuthMethods - had to auth with none first rename to testChannel in testexec to prevent confusion stop write(1 in testexec to prevent printing the output running testexec will disconnect after 3s, but keep result read non blocking in testexec added sshstate unused atm neon443 2025-06-25 11:55:21 +01:00
  • db36c56f29 improved disconnection - will dismiss terminal on exit -- before you had to type more to exit improved connection logic with a try catch improved disconnection doesnt crash fix [int] to [cchar] reduced mem usage code cleanup try? -> catch print(error.localizedDesc) guard let var = var else ---> guard let var else removed file importers as it didnt eork compbined guards in writetochannel neon443 2025-06-25 11:40:25 +01:00
  • f71bd0ddf2 bell ringing backend done now need to actually trigger it added ring() to ring the bell terminal is now a fullscreencover can be dismissed and reopened or disconnected - need to make it keep the scrollback increased sleep between reads added support for title added setTitle function, defaults to username@server increased the buffer to 16384 bytes neon443 2025-06-25 11:12:10 +01:00
  • bf4a273a46 moved hostsmanger back out because nested observedobjects are wierd added multiView - it connects to all your hosts at once, this proves that i can do many at once --- for a future update neon443 2025-06-24 15:33:56 +01:00
  • 0f5d45cc85 integrated hostsmanager into sshhandler lets see where this goes made disconnct async rewrote async reading from ssh usleep -> Task.sleep() to prevent blocking neon443 2025-06-24 14:57:25 +01:00
  • 507c533b46 more swift 6 stuff dialogview updates - remove button make disconnect button on terminal dismiss the terminal neon443 2025-06-24 13:25:57 +01:00
  • 1e3a57d788 added dialogview for custom dialogs added nice green color updated debug host reduced sleep greatly removed channel checker in sshqueasync loop set dark mode on the app gonna start work on async in sshhandler neon443 2025-06-24 12:33:52 +01:00
  • 3f2c92cd91 massively optimised reading from ssh, reduced cpu usage and energy usage neon443 2025-06-24 09:48:33 +01:00
  • 11a3db9307 swift 6 migraition stuff the app takes a lot of cpu idk why neon443 2025-06-24 09:31:55 +01:00
  • 1bb761d80e swift 6 underway neon443 2025-06-23 20:30:26 +01:00
  • 88b39363b2 version bump remove @mainactors set env vars use sshoptionsset to set a username disconnect sends an eof and handles the channel clsoing, for some reason it crashes on disconnect tho do catch for pubkeyauth added asyncReadFromChannel remove weak self condense guards disconnect on a eof reccieve reduce time sleeping neon443 2025-06-23 18:14:08 +01:00
  • 31beda2124 fix test connection button increase buffer to 512 bytes made it a blocking read because its happening on a bg thread anyways using a cchar bitpattern for each string.utf8 when writing its made no diff yet increased sleep if nothing is returned neon443 2025-06-23 13:41:20 +01:00
  • 8df8c77c7a implemented actually using Host.publicKey and Host.privateKey to store pubkeys and privkeys - this gives u icloud synced pub/privkeys - per host!! made it load the key's string representation (if present) into the textboxes to tell the user that the key is there made the privkey box a securefield to show .... instead of the key neon443 2025-06-23 12:51:41 +01:00
  • c9eab9dde8 every fucking time i try rewriting that function neon443 2025-06-23 11:33:32 +01:00
  • db76329f80 rewrote autwithpubkey to use emmeory strings added strip pubkey and privkey functions to remove stuff like ssh-ed25519 and neon443@mac anc -----begin key ----- end key etcc neon443 2025-06-23 11:23:25 +01:00
  • 01d569a859 mainacotr for sshhandler added a cleanup to run after 10s clearing memory for keys and files remove timer code remove write(1 to stop console echo open links image -> systemImage neon443 2025-06-23 10:19:49 +01:00
  • ea857a8960 fix warnings neon443 2025-06-23 09:44:33 +01:00
  • b691224e39 encryption compliance neon443 2025-06-23 09:41:29 +01:00
  • 721cea4246 version bump neon443 2025-06-23 09:40:26 +01:00
  • aab1756b5a bump version remove send Ax256 change powerplug.portrait to power reduce time from 10_000 to 1_000 remove sending print add shellview neon443 2025-06-22 19:53:12 +01:00
  • 71c8e3f891 YESSSSS typing works so basically it just stopped tryna read from the server once the server was silent for a sec so then i removed the return and made it an optional if let and wait 10_000 us if nothing comes back this is so goood neon443 2025-06-22 19:32:42 +01:00
  • 9338b46760 improved how the terminal is updated, now just async reads aytomatically and will js not do anything if nothing recieved terminal also starts at the top and doesnt have th wierd scroll artifacting neon443 2025-06-22 18:43:10 +01:00
  • b60e8f4eed can kinda type - it gets sent to teh server, but doesnt refres :skulk: neon443 2025-06-22 16:24:21 +01:00
  • e156d63cf6 WORKS!!!!! PUBKEY ON IOS!!!!!! no file import rn neon443 2025-06-22 12:35:08 +01:00
  • 1cf9518e0f remove terminal string rewrote authWithPubkey() to not write files and take data direcytly remove read loop (comment adding it) readfromchannel returns string using swifterm to do terminal emulation neon443 2025-06-22 10:51:21 +01:00
  • ed1e7ab25d commiting atp pressing write sends ls\n terminal view gets sshhandler instead of js text sumplify writetochannel, takes a string implemented a terminalviewdelegate that some rason never gets to do anythoing neon443 2025-06-21 17:07:28 +01:00
  • c33e22cd3d write to channel works!!!!!!!!!!!!!!!!! removing the read funciton call fixed it neon443 2025-06-21 12:58:08 +01:00
  • 5fafc52913 added syntax highlighting - and a new runtime error :cry neon443 2025-06-21 12:50:28 +01:00
  • cf5feaacc2 cleaned up crashes and stuff from the alert message not getting a value neon443 2025-06-21 12:06:12 +01:00
  • 59e3a9e296 Hostkey changed warning rewrote hostkey cahnged checker hostkeys sync as well, and the app syncs icloud on launch neon443 2025-06-21 11:59:50 +01:00
  • d982d018b8 functions to get hosts and indexes matching input, and to update a host added a hostkey checker - fatalerror rn reordered ui in connection view to make more sense added sections moved connect button to toolbar, disconect is there too! hostsview update neon443 2025-06-21 11:03:30 +01:00
  • 57c6b6005b v bump neon443 2025-06-20 18:11:18 +01:00
  • 690d7ff95a hostsview: add plus button add more stuff to Host prevent host from changin in debug prettify the list - show uuid if no address set save changes to Host when closing connectionView fix connectionView button being disabled sometimes use a different button to add a host instead of the toolbar one when its empty bc of ! unwrap crash animations on adding/removing hosts neon443 2025-06-20 15:33:01 +01:00
  • be37c4efb9 asdfjkhadsjkghkjaehgf neon443 2025-06-20 14:43:50 +01:00
  • a06de0b4c4 hostsview - list of hosts hostmanager for loading and saving hosts to defaults host.debug/.blank as static vars fix crash on disconnect by checking for connection in timer before checking if channel is open keychain layer? to convert ed25519 to seckey and back for keychain storage generate ed25519 via cryptokit neon443 2025-06-20 13:40:20 +01:00
  • 86dd316e33 added a keymanager and keymanagerview, can ontly generate 4096 rsa rn uses seckey neon443 2025-06-20 10:31:22 +01:00
  • 5747fe5395 switch back to data - its just easier need to do ui now neon443 2025-06-20 09:28:39 +01:00
  • 2e1c624bec just tried to revert to it being pastable textfields but nope it doesnt work its bc its not base64 encoded maybe try that after? neon443 2025-06-19 17:38:54 +01:00
  • 15615e76a4 YESS ok mb before, but it fking works!!!!! like i can login to my mac from sshshell come on just need to figure out how to type and what to do with all the [0m]133;B[?25h[?2004h neon443 2025-06-19 16:59:10 +01:00
  • 73adfd8fc8 still fricking cooked sybau neon443 2025-06-19 16:32:17 +01:00
  • d2e2aed7ea still not worling just hangs when trying to open a shell neon443 2025-06-19 16:28:12 +01:00
  • 869de8a47b ok - progress!! libssh can read the files saved!! neon443 2025-06-19 13:06:31 +01:00
  • 5b91e315a7 rewrote authwithpubkey - currently doesnt auth but it can save the pub/privkeys temporarily and import? testing rn neon443 2025-06-19 13:00:18 +01:00