Author Topic: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)  (Read 24110 times)

0 Members and 1 Guest are viewing this topic.

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #60 on: August 10, 2013, 10:40:05 am »
Quote
Is libti* able to send and receive files without *.tns?
Nope, not more than TINC(L)S.
libticalcs doesn't support /documents/themes.csv and files at the root of /documents, or nested folders - both of which are rarely used, judging by the fact that they're infrequent feature requests.

Quote
Oh, BTW, you're wrong when saying "neither BASIC, nor Lua, can read and write files" : there are (and not just a handful) Lua and Basic projects that come with multiple files that have to be put inside of MyLib, to function, so they are reading/writing to external things, just not very freely.
I guess I could have written a mention such as "for our purposes"... but for pretty much everyone, "reading and writing files" means reasonable access to the filesystem, rather than limited, platform-specific functionality. TI's peculiar understanding of "reading and writing files" is not what we need for the purposes of the program we're currently discussing.
« Last Edit: August 10, 2013, 10:50:41 am by Lionel Debroux »
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline Adriweb

  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1708
  • Rating: +229/-17
    • View Profile
    • TI-Planet.org
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #61 on: August 10, 2013, 10:57:12 am »
Right, but the thing is that we have to support these kinds of documents since it's exactly the purpose of pacspire : easier multi-file projects installation :)

But as said, before, whatever the type, lua, basic, or ndless, it should not have to matter to the program (both computer and calc side)
My calculator programs
TI-Planet.org co-admin.
TI-Nspire Lua programming : Tutorials  |  API Documentation

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #62 on: August 10, 2013, 11:03:38 am »
Quote
Right, but the thing is that we have to support these kinds of documents since it's exactly the purpose of pacspire : easier multi-file projects installation :)
I was mostly thinking about reading writing the aforementioned calculator-side list of packages / files / whatever, not for the documents themselves.
But that makes me think that if we want to be able to store, on the calculator side, packaging information on calculators without Ndless, then using MyLib is our only option.
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline compu

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 275
  • Rating: +63/-3
    • View Profile
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #63 on: August 10, 2013, 11:05:35 am »
First of all, thanks ExtendeD for adding nl_exec :)

As for the Ndless/no-ndless question, I'm not sure how you would manage packages on a non-ndlessed calc. It would definitely require a lot more work on the computer side, which is at least not what I originally planned.
I still think we should focus on Ndless first, because it makes the most sense in my opinion.

But as said, before, whatever the type, lua, basic, or ndless, it should not have to matter to the program (both computer and calc side)
I'm pretty sure it will matter, because Ndless programs will have to be installed differently from the basic/lua stuff (outside from /documents/, with shortcuts, file extensions, etc.)

Offline Levak

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1002
  • Rating: +208/-39
    • View Profile
    • My website
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #64 on: August 10, 2013, 11:10:34 am »
But as said, before, whatever the type, lua, basic, or ndless, it should not have to matter to the program (both computer and calc side)
As said by other people earlier, there is no interest in making pacspire support Lua nor Basic program, since they are only one-file-made.
« Last Edit: August 10, 2013, 11:10:43 am by Levak »
I do not get mad at people, I just want them to learn the way I learnt.
My website - TI-Planet - iNspired-Lua

Offline Adriweb

  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1708
  • Rating: +229/-17
    • View Profile
    • TI-Planet.org
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #65 on: August 10, 2013, 11:21:03 am »
But as said, before, whatever the type, lua, basic, or ndless, it should not have to matter to the program (both computer and calc side)
I'm pretty sure it will matter, because Ndless programs will have to be installed differently from the basic/lua stuff (outside from /documents/, with shortcuts, file extensions, etc.)

In my opinion, the transfer itself shouldn't have to be different : what should change, is the behaviour of the calc program upon receiving the files :
 - if the metadata says it's an ndless file or [whatever user option forcing the destination not to /documents], then move that wheever it's good.
 - if [there is no metadata file ?] or it's an official .tns (easy to detect), then, don't move it (expect if user option blablba), but watch out that if there are several files, then, look at the metadata to know which ones have to be put in MyLib.


But as said, before, whatever the type, lua, basic, or ndless, it should not have to matter to the program (both computer and calc side)
As said by other people earlier, there is no interest in making pacspire support Lua nor Basic program, since they are only one-file-made.
You don't seem to have read :
Quote
Oh, BTW, you're wrong when saying "neither BASIC, nor Lua, can read and write files" : there are (and not just a handful) Lua and Basic projects that come with multiple files that have to be put inside of MyLib, to function, so they are reading/writing to external things, just not very freely.
nor :
Quote
Of course, but not so many if you're combining the conditions : getting aware of the project && getting convinced it is a good idea && resticting (with no other motive than pissing the management off) to ndless files[/b].
I'm just trying to help growing the targeted people ("catchment area" / "zone de chalandise" Tongue)



But I have to say it's difficult to keep up for new posts in this topic while writing :P
« Last Edit: August 10, 2013, 11:21:33 am by adriweb »
My calculator programs
TI-Planet.org co-admin.
TI-Nspire Lua programming : Tutorials  |  API Documentation

Offline Levak

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1002
  • Rating: +208/-39
    • View Profile
    • My website
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #66 on: August 10, 2013, 11:38:42 am »
You don't seem to have read : [...] nor [...]
But I have to say it's difficult to keep up for new posts in this topic while writing :P
Yeah, I skipped an entire page ... damn me.
Then, yes, for MyLib Basic/Lua programs, there is an interest, but how many are they exept Make3D demo and FormulaPro ?


On another topic, talking about web hosting, what should differ from the existing if there is no PC-side client ?
I mean what will be the differences between TI-Planet hosting and the pretty concept posted earlier ?
« Last Edit: August 10, 2013, 11:40:53 am by Levak »
I do not get mad at people, I just want them to learn the way I learnt.
My website - TI-Planet - iNspired-Lua

Offline Adriweb

  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1708
  • Rating: +229/-17
    • View Profile
    • TI-Planet.org
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #67 on: August 10, 2013, 11:53:04 am »
You don't seem to have read : [...] nor [...]
But I have to say it's difficult to keep up for new posts in this topic while writing :P
Yeah, I skipped an entire page ... damn me.
Then, yes, for MyLib Basic/Lua programs, there is an interest, but how many are they exept Make3D demo and FormulaPro ?

Some programs of critor, too :P
And some "big" basic (and rarer, Lua, like your Make3d, yes) projects by other community members or even TI sometimes.


On another topic, talking about web hosting, what should differ from the existing if there is no PC-side client ?
I mean what will be the differences between TI-Planet hosting and the pretty concept posted earlier ?
Hmm.. the computer side is to have a unified repo-browsing and transferring experience that also makes the whole package-with-metadata thing easier (not made by hand by the user).
Concerning TI-Planet, since we'd already talked about having some API to get archive-info and whatnot (-in JSON, I believe, but that's not much the point), this would be the chance to get it done for a good/well-defined purpose.
« Last Edit: August 10, 2013, 12:03:38 pm by adriweb »
My calculator programs
TI-Planet.org co-admin.
TI-Nspire Lua programming : Tutorials  |  API Documentation

Offline Vogtinator

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1192
  • Rating: +108/-5
  • Instruction counter
    • View Profile
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #68 on: August 10, 2013, 12:37:28 pm »
You don't seem to have read : [...] nor [...]
But I have to say it's difficult to keep up for new posts in this topic while writing :P
Yeah, I skipped an entire page ... damn me.
Then, yes, for MyLib Basic/Lua programs, there is an interest, but how many are they exept Make3D demo and FormulaPro ?

Some programs of critor, too :P
And some "big" basic (and rarer, Lua, like your Make3d, yes) projects by other community members or even TI sometimes.
It won't be too much work to get support for such apps in, too.
I mean, it's just two things (hiding, linking) that will not be done for non-native programs.
Quote
On another topic, talking about web hosting, what should differ from the existing if there is no PC-side client ?
I mean what will be the differences between TI-Planet hosting and the pretty concept posted earlier ?
Hmm.. the computer side is to have a unified repo-browsing and transferring experience that also makes the whole package-with-metadata thing easier (not made by hand by the user).
Concerning TI-Planet, since we'd already talked about having some API to get archive-info and whatnot (-in JSON, I believe, but that's not much the point), this would be the chance to get it done for a good/well-defined purpose.
And, the two things above are the exact same thing, just with a different layout. We would need a native client, which also handles transferring the files (libticalcs + Qt?).

Offline Adriweb

  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1708
  • Rating: +229/-17
    • View Profile
    • TI-Planet.org
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #69 on: August 10, 2013, 01:25:46 pm »
Quote
On another topic, talking about web hosting, what should differ from the existing if there is no PC-side client ?
I mean what will be the differences between TI-Planet hosting and the pretty concept posted earlier ?
Hmm.. the computer side is to have a unified repo-browsing and transferring experience that also makes the whole package-with-metadata thing easier (not made by hand by the user).
Concerning TI-Planet, since we'd already talked about having some API to get archive-info and whatnot (-in JSON, I believe, but that's not much the point), this would be the chance to get it done for a good/well-defined purpose.
And, the two things above are the exact same thing, just with a different layout. We would need a native client, which also handles transferring the files (libticalcs + Qt?).

I'd very much like to insist that to get as many people attracted to this project as possible, something without any external install would be better, and thus it's why I'd be thinking of a Java program which :
- if running on Linux, uses libti*
- if Mac or Windows, detect if TINC[L]S is installed, then use navnet, otherwise fallback on libti* if installed.
On both cases, if no transfer "driver" is detected (unlikely...), well, tell the user to get either one. (But the rest of the program could still work)
« Last Edit: August 10, 2013, 01:26:53 pm by adriweb »
My calculator programs
TI-Planet.org co-admin.
TI-Nspire Lua programming : Tutorials  |  API Documentation

Offline Vogtinator

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1192
  • Rating: +108/-5
  • Instruction counter
    • View Profile
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #70 on: August 10, 2013, 01:39:13 pm »
Quote
On another topic, talking about web hosting, what should differ from the existing if there is no PC-side client ?
I mean what will be the differences between TI-Planet hosting and the pretty concept posted earlier ?
Hmm.. the computer side is to have a unified repo-browsing and transferring experience that also makes the whole package-with-metadata thing easier (not made by hand by the user).
Concerning TI-Planet, since we'd already talked about having some API to get archive-info and whatnot (-in JSON, I believe, but that's not much the point), this would be the chance to get it done for a good/well-defined purpose.
And, the two things above are the exact same thing, just with a different layout. We would need a native client, which also handles transferring the files (libticalcs + Qt?).

I'd very much like to insist that to get as many people attracted to this project as possible, something without any external install would be better, and thus it's why I'd be thinking of a Java program which :
- if running on Linux, uses libti*
- if Mac or Windows, detect if TINC[L]S is installed, then use navnet, otherwise fallback on libti* if installed.
On both cases, if no transfer "driver" is detected (unlikely...), well, tell the user to get either one. (But the rest of the program could still work)
Althogh Java is absolute crap to develop a graphical application in, it might be the best option.
Using JNI to interface Qt with NavNet might be too complex.

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #71 on: August 10, 2013, 01:41:12 pm »
*Cough* Just thought I would mention that TILP would not be usable for me (and I'm sure) other windows users. I have never successfully gotten it to run properly on this PC (running windows 7). In fact, the last time I tried to install it (a few months ago) it rendered both TI connect and itself unusable. This was following the instructions to a T. :/

Offline hoffa

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 322
  • Rating: +131/-13
    • View Profile
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #72 on: August 10, 2013, 01:41:36 pm »
Quote
On another topic, talking about web hosting, what should differ from the existing if there is no PC-side client ?
I mean what will be the differences between TI-Planet hosting and the pretty concept posted earlier ?
Hmm.. the computer side is to have a unified repo-browsing and transferring experience that also makes the whole package-with-metadata thing easier (not made by hand by the user).
Concerning TI-Planet, since we'd already talked about having some API to get archive-info and whatnot (-in JSON, I believe, but that's not much the point), this would be the chance to get it done for a good/well-defined purpose.
And, the two things above are the exact same thing, just with a different layout. We would need a native client, which also handles transferring the files (libticalcs + Qt?).

I'd very much like to insist that to get as many people attracted to this project as possible, something without any external install would be better, and thus it's why I'd be thinking of a Java program which :
- if running on Linux, uses libti*
- if Mac or Windows, detect if TINC[L]S is installed, then use navnet, otherwise fallback on libti* if installed.
On both cases, if no transfer "driver" is detected (unlikely...), well, tell the user to get either one. (But the rest of the program could still work)

You really think that would make people want to use it? Most people pretty much never hook up their calculator to their computer, it's hacky, requires to download tools and has minimal benefits (compared to the work required to implement it nicely). [rant]Plus, who uses a joke like Java anyway?[/rant]

I used to send my buddies games just by cable during classes (oh boy the hours spent during mathematics class playing Pokemon), and that's up to where the majority of people bother to go just to put some stuff on a calculator (and with the package manager at the very most two files would be required to be sent, one if it was integrated into ndless)
« Last Edit: August 10, 2013, 01:47:10 pm by hoffa »

Offline Adriweb

  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1708
  • Rating: +229/-17
    • View Profile
    • TI-Planet.org
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #73 on: August 10, 2013, 02:23:29 pm »
Althogh Java is absolute crap to develop a graphical application in, it might be the best option.
Using JNI to interface Qt with NavNet might be too complex.
Yeah, I had Java that in mind because it's at the same time directly cross-platform (no need for external QT and such) and could be linked to both libti* (JNI I guess, loading .dlls or .so or .dylib) and navnet (itself is using JNI but that's the deep navnet part which we won't use, only the high-level stuff are necessary. You can pretty much see what here.)
But I indeed know it's not the preferred language for many of us here :D (I myself didn't write much Java except nRemote ^^)

*Cough* Just thought I would mention that TILP would not be usable for me (and I'm sure) other windows users. I have never successfully gotten it to run properly on this PC (running windows 7). In fact, the last time I tried to install it (a few months ago) it rendered both TI connect and itself unusable. This was following the instructions to a T. :/
Same here (the filter driver thing is what blocked me, all the rest was fine) :/ And of course, it went flawlessly on Ubuntu... Ah, Micro$oft....

Quote
Quote
And, the two things above are the exact same thing, just with a different layout. We would need a native client, which also handles transferring the files (libticalcs + Qt?).

I'd very much like to insist that to get as many people attracted to this project as possible, something without any external install would be better, and thus it's why I'd be thinking of a Java program which :
- if running on Linux, uses libti*
- if Mac or Windows, detect if TINC[L]S is installed, then use navnet, otherwise fallback on libti* if installed.
On both cases, if no transfer "driver" is detected (unlikely...), well, tell the user to get either one. (But the rest of the program could still work)

You really think that would make people want to use it? Most people pretty much never hook up their calculator to their computer, it's hacky, requires to download tools and has minimal benefits (compared to the work required to implement it nicely). [rant]Plus, who uses a joke like Java anyway?[/rant]

I used to send my buddies games just by cable during classes (oh boy the hours spent during mathematics class playing Pokemon), and that's up to where the majority of people bother to go just to put some stuff on a calculator (and with the package manager at the very most two files would be required to be sent, one if it was integrated into ndless)
I believe this is way more true for z80 platforms than Nspires (and 68k at a lesser extent, though). That's probably because students would get a z80 "by default" whereas a 68k or an Nspire would actually be a choice.

And that is a good point for making the software (especially the computer one, since the calc one, once installed, means the user trusts the whole thing anyway) as intuitive/portable/easy-to-use as possible. Which is again why feature detection on Mac/Windows is important : if the user has TINC[L]S installed, the program needs to install nothing : it justs sits there (no install needed to launch a .jar or an exe/app where it's embedded into), using what's already available and not installing complementary libs (which is, also, not possible all the time, especially for a driver, if the user is not an administrator).

PS : I was/am also the calc-guy in class :P
« Last Edit: August 10, 2013, 02:34:56 pm by adriweb »
My calculator programs
TI-Planet.org co-admin.
TI-Nspire Lua programming : Tutorials  |  API Documentation

Offline compu

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 275
  • Rating: +63/-3
    • View Profile
Re: pacspire - A simple package manager for the TI-Nspire/Ndless (WIP)
« Reply #74 on: August 10, 2013, 02:51:43 pm »
I have added shortcut support now. (in the gif pacspire is configured to install packages to /pacspire -> only the shortcut is visible to the user, packages installed to /pacspire can't be removed at the moment :P)