This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Messages - TC01
1
« on: September 10, 2015, 02:10:08 pm »
Since I have a thread about this here-- bump! The packages have now been accepted into the official Fedora repositories. Everything but tilp2 is install-able right now on Fedora 21 or Fedora 22 (including all of libti*, tfdocgen, and gfm); tilp2 was just built for Fedora Rawhide this afternoon and needs to be pushed to stable. This should take about a week *returns to lurking*
2
« on: July 16, 2014, 11:53:32 pm »
This is good to hear. What would be cool is to eventually be able to download calc files from any big site via one single client
I could have sworn I replied to this back in February. But that is indeed the goal! *resurrects this thread yet again* After growing impatient with myself, I've finally released calcpkg v2.0, three years after the last release to ticalc.org. If you've read above, you're probably aware of some of the changes that have been sitting on github for quite a while, but to summarize... -Calcpkg is now installable through pip! "pip install calcpkg" is probably the fastest way to get it, though I've updated the ticalc.org and Cemetech archives with the new release. As a consequence of this, setuptools is now a dependency. Sorry. -Support for Cemetech and Omnimaga, with an extensible system enabling more community site archives to be added! TI-Planet support is planned in the hopefully-not-three-years-away future. -An overhaul of command line options and further modularization / code cleanup / etc of bits of the project. (At least, that's what my changelog claims, it's been so long...). -Changes made by KermM for Sandpaper to the calcrepo backend were merged in as well. (For a more detailed changelog, take a look at the git commit history on github). If you forget what this thing is: it's a command line tool to query ticalc.org (and now other sites). As a quick and silly example, "calcpkg -r ticalc list Quadratic" will probably list all the correctly-spelled quadratic solvers on ticalc.org, and "calcpkg -r ticalc get Quadratic" would download them all (if, for some reason, you really wanted all of them). The backend library is also available for anyone who wants to do something that requires having access to the {ticalc.org, Cemetech, Omnimaga} archives; as I mentioned above, components of calcpkg were used as part of Sandpaper. If you have a feature request / bug report, either tell me about it here or make use of the issue tracker. Also, the screenshots on the project pages are now out of date, so I should really update them...
3
« on: February 17, 2014, 09:45:10 pm »
I'm not sure there is really a good way to support files that are just links to other places in calcpkg anyway, unfortunately. It might be a good idea actually. Btw nice to see you again
Hello! Yep, I do still exist in some capacity, despite the best efforts of university and other irritating real life time commitments.
4
« on: February 17, 2014, 09:44:26 pm »
*resurrects this thread* So, I've been working on this project lately again (on github: https://github.com/TC01/calcpkg). I'm pleased to say that we have working support for Cemetech and mostly-functional support for Omnimaga! Cemetech support is "complete"; however, it currently makes a list of files by spidering through the download categories. Hopefully, I'll be able to replace this soon with a master index file similar to the one ticalc.org and now Omnimaga have. Omnimaga support uses Eeems' new way of browsing the archives; however, I haven't gotten around to implementing an info command to let you view information about files or fixing the ugly command line output. When both of these are finished, I'll finally release version 2.0. For those of you who weren't around 3 years ago when I first started working on this project: this is a piece of software that lets you browse ticalc.org from the command line, akin to a Linux package manager (apt-get, rpm, yum, pacman, etc). The libraries it uses to do this can be used by other people's applications to hook into ticalc.org without having to write a lot of messy HTML parsing code.
5
« on: February 13, 2014, 01:55:15 pm »
[bjr@rannoch calcpkg]$ calcpkg -x -r omnimaga get MirageOS Results for repo: omnimaga File Category: File Name: =========================================================================================== Old-Calculator-RPGs-Headquarter-Archive/TI-Shells-Kernels-and-Plugins/ [TI-83+/SE/84+/SE] MirageOs 1.2 Download files [Y/N]? y Downloading /files/Old-Calculator-RPGs-Headquarter-Archive/TI-Shells-Kernels-and-Plugins/mirageos.zip from http://www.omnimaga.org/files/Old-Calculator-RPGs-Headquarter-Archive/TI-Shells-Kernels-and-Plugins/mirageos.zip Download complete! Wrote file /home/bjr/Downloads/Old-Calculator-RPGs-Headquarter-Archive-TI-Shells-Kernels-and-Plugins-mirageos.zip
Extracting file /home/bjr/Downloads/Old-Calculator-RPGs-Headquarter-Archive-TI-Shells-Kernels-and-Plugins-mirageos.zip, creating directory for extracted files All files in archive extracted to /home/bjr/Downloads/Old-Calculator-RPGs-Headquarter-Archive-TI-Shells-Kernels-and-Plugins-mirageos-zip The archive file /home/bjr/Downloads/Old-Calculator-RPGs-Headquarter-Archive-TI-Shells-Kernels-and-Plugins-mirageos.zip has been deleted!
[bjr@rannoch calcpkg]$ ls ~/Downloads/Old-Calculator-RPGs-Headquarter-Archive-TI-Shells-Kernels-and-Plugins-mirageos-zip/ DevPac8X.COM mirage.bat mirage.inc MIRAGEOS.8xk MirageOS.txt ti83plus.inc So, this didn't take very long. This definitely is not perfect though. Even from the output above you can see one obvious problem- my command line interface isn't working very well. There are other problems; the "info" command has not yet been implemented, and filenames with a space in them are causing issues. But these should all be easy enough for me to fix. Thanks again Eeems! I should probably update the old calcpkg thread on Omnimaga as well...
6
« on: February 13, 2014, 01:19:25 pm »
Thanks Eeems! I haven't posted about calcpkg in forever here, but I've been working on it on github recently, as you can see. Hopefully the next release of the software will have support for ticalc.org, Cemetech, and Omnimaga (and will happen sometime soon!) Looking sweet! I might make some gCn bridge for that ^.^
You should just make a gCn client for calcpkg ;P
The existing gCn/Sandpaper bridge to ticalc.org actually uses calcpkg as the backend to lookup file info and fetch files, so there's no reason somebody couldn't write an Omnimaga bridge as well. (Once I actually get Omnimaga support working, that is, but it'll be trivial to do). EDIT: I would, obviously, recommend using calcpkg to do this instead of writing everything from scratch, but I'm kind of biased.
7
« on: November 21, 2012, 11:20:00 am »
There is an “issue” with wget, because the server is set up to reject it for some reason. Which is dumb, because it can be trivially bypassed by using the option -U “any-non-wget-user-agent-string”. I think there is a hotlinking protection for images that goes by referrer headers, but I haven't checked to see if it's still active today.
Oh, then I guess this is working because the useragent used by Python's urlllib doesn't get rejected. Is there a reason why wget is set to be rejected, or is it just some old configuration setting that hasn't been changed for years?
8
« on: November 20, 2012, 10:31:01 pm »
Good to hear this is progressing again.
By the way, is getting ticalc.org files tricky when it comes to hotlinking? I remember that when someone posted a direct zip file link, it redirected to the directory listing or something.
Also glad you're getting Omni and Cemetech too . You should do TI-Planet as well (although in their case, like Omnimaga, a bunch of the files are links to a different server, such as TI OSes, rather than an uploaded file)
Hmm... I've never had issues with it. My code to download just gets a link to the direct zip and downloads said zip. I'll add TI-Planet to the list of "things I'll hope to get working"- are there any other calc sites these days that still have sizeable download archives that are worth trying to support? Hey welcome back ^_^
Actually, you can get the filename from the HTTP header.
(woo 4000th post )
I was in the middle of writing out a reply to this and then I realized I may misunderstood- when I click on the "download URL" button, the HTTP header will tell me what the file is that this link actually points at, instead of the "sa=downfile;id=number;" link? In that case, then, it'll be much easier. I could use the "loop through all files" process to figure out the IDs, get the name they were uploaded under from their info page, and then do that to find out what the actual archive filename is. Still more complex than ticalc.org, but at least it'll work. Mind you- it might be better to not do this, especially if this would increment the download counter each time I run it.... maybe it would be easier to just rewrite the search code and create a third index file that will store file IDs or something.
9
« on: November 20, 2012, 09:34:34 pm »
It's been ages since I've posted about this project (or indeed at all)... I've been working on it recently, so I thought I'd bump this. (And I probably should update the first post while I'm at it- doing that now). First off, there is now a github repository for this project, so you can see I actually have been working on it lately. I'm vaguely approaching the milestone for a 2.0 release. Aside from vastly cleaned up and improved code (the only thing that has yet to be rewritten from the old 0.5/0.8 days is the actual index searching code, which someday probably should be), the big feature is support for multiple repositories. Unfortunately I don't actually have any multiple repositories to show off quite yet. There are templates for cemetech and omnimaga under various stages of completion (and it's trivial to add more, they are just python files that get dropped into a directory), but for various reasons neither are quite yet acceptable. I'd love to have at least one of these working before I release 2.0 (yes, I actually still release projects!), but if that proves impractical I may just create a test repository of some sort to show off the feature. But anyways... here's the current status of both- suggestions or whatnot are welcome: The Cemetech one works pretty well, I just don't have an easy way of getting a list of all files ( like this). I guess I could make an awkward hack of some sort that crawls through the archives, but I imagine it'd work a lot nicer if a script or something could be run off the Cemetech servers directly (again, like ticalc.org). The Omnimaga one is a bit messier, because Omnimaga uses file IDs in file URLs rather than paths, the way Cemetech and ticalc.org do. To be more specific: a ticalc.org download URL points at /83plus/asm/games/filename.zip (or something), whereas an Omni download URL points at id=350 (or something). On the plus side, this makes it easier to get a list of all files- I simply start at file "1" and loop until I've gotten all n files, where n is the number of files in the archives (a statistic that's available elsewhere on the site). But on the other... it would break searching directly by "file name"- because the data that would need to be stored as "file name" would be file IDs (in other words, just a number), rather than something like "filename.zip".
10
« on: September 29, 2011, 05:00:16 pm »
It would be cheaper to wait for chronomex to finish z680k, his z80 emulator that runs on the 68k calcs. I suppose it wouldn't be impossible, but I don't know that I'd consider it a "fun" project. It would definitely be simpler (and quicker) to just buy an 89 (or a V200, but sadly they are more expensive).
11
« on: September 02, 2011, 01:45:14 pm »
I've uploaded 1.1 to ticalc.org and Cemetech archives. This is just a minor bugfix update; I fixed the clean command and the logging system (both of which I inadvertently broke with the 1.0 update/rewrite). Clean now just deletes the index files (in case they become corrupted or something). As for logging, it is enabled by default in the Linux version (and logs to /tmp/calcpkg.log). It's disabled for now under Windows until I figure out what exactly I want to do with it there.
And I combined the -n and -p options to one global -y, --assume-yes option (having two opt switches that did the same thing was silly).
The main point of this release, though, is a couple of fixes to the way the -f switch (search by archive file name rather than title) works. And that's because I wrote some Python code that uses calcpkg for Kerm's Sandpaper FTP gCn project, but it requires the fix to work properly.
12
« on: August 26, 2011, 09:59:03 pm »
If you want I can setup a package for pacman and host it on my repo. That way all the arch users who use my repo can install it with pacman -S calcpkg
That'd be great, Eeems.
13
« on: August 26, 2011, 09:40:23 pm »
About nine hours later... I've released version 1.0! It's available from ticalc.org here for Windows and here for Linux. As part of this release, I completely restructured the program. Before, it was a little clunky- there was one Python script, you had to have it in the same directory as the index files and where things were downloaded to. After doing the above, I rewrote the script so there was a script (calcpkg) and a Python package (ticalcDotOrg). So what does that mean? Well, for one, you don't need to worry about where the index files are anymore. And the system now automatically downloads to your home downloads folder- so on Windows that would be C:\Users\username\Downloads, and on Linux that's /home/username/Downloads. It also means you don't need to type "python calcpkg.py" anymore, you can just type "calcpkg.py". (On Linux, I removed the ".py" suffix, so you didn't have to type "calcpkg.py" and could just type "calcpkg". However, Windows apparently didn't like that, so for Windows it's still called calcpkg.py.) And I did get the install command to automatically extract tar-compressed files too. To install calcpkg, you have a large number of options. On Windows, you can run either of the executables (one is for win32, one is for amd-win64, or 64-bit), or you can extract the zip archive and run "python setup.py install". On Linux, I've provided an RPM package for Fedora, OpenSUSE, Mandriva, etc. users. Python can actually automatically make rpm packages, which is a nice feature (especially since I use Fedora ). Unfortunately, there is no such support for making .deb packages (at least, not in the official distutils). So users of other Linux systems will have to extract the .tar.gz file and run "python setup.py install".
14
« on: August 26, 2011, 12:31:17 pm »
So, I finally remembered that tev suggested parsing the file's category page to get the info page for a file. So, this morning, I wrote code to do just that, modelling the output on yum's info command. Here's some sample output. I didn't feel like making a screenshot, so I copy-pasted my terminal output into a code tag. $ ./calcpkg.py info "Wacky Fun Random Numbar Generator Operating System" Name : Wacky Fun Random Numbar Generator Operating System Author : Michael Vincent ([email protected]) Category : DOS Utilities Date Uploaded : Tue Aug 10 15:23:59 2004 File Size : 17,780 bytes Documentation : Yes Source Code : Yes Description : The fun of Wacky Fun Random Numbar Generator returns with this complete operating system, handwritten in x86 assembly. This is the epitome of must-download files.
$ ./calcpkg.py info -g -c 83plus "Wacky Fun Random Numbar Generator" Name : Wacky Fun Random Numbar Generator v1.00000069 Author : Nick Disabato ([email protected]) Category : TI-83/84 Plus Assembly Games Date Uploaded : Mon Aug 9 01:59:46 2004 File Size : 2,736 bytes Documentation : No Source Code : Yes Description : DOOOOOD THIS PROGRAM IS THE GREATEST L@@K MUST DOWNLOAD!!! A-1 SUPER!! YESSSSS! RUN WITH ASM() AT HOMESCREEN!!!!
Name : Wacky Fun Random Numbar Generator v1.00000069 Author : Nick Disabato ([email protected]) Category : TI-83/84 Plus BASIC Games (Chance/Guessing) Date Uploaded : Wed Jul 26 03:50:32 2000 File Size : 1,835 bytes Documentation : Yes Source Code : Description : DOOOOOD THIS PROGRAM IS THE GREATEST L@@K MUST DOWNLOAD!!! A-1 SUPER!! YESSSSS!
As you can see, "info" takes all the same arguments as get/install and search/list. The one thing I haven't done is make it handle multiple authors (which is why I'm not releasing right now). And because it does HTML parsing (whereas most of the other commands use the local index files), if you ask for info on multiple files at once it will be slow. Also, before, the file's line encoding was Windows, which meant that you couldn't run './calcpkg.py', you needed to run 'python calcpkg.py'. Now, the output is Unix and both invocations work fine. And also, I finally read the above posts ( ), and I'll look at adding auto-un-tar support too.
15
« on: August 10, 2011, 05:18:54 pm »
Nice, these should be added to a repository. Did you add what the dependencies are to the packages, so the install order is enforced?
Yes, I did. Hmm... I know Fedora project contributors can make repositories on the Fedora People site (repos.fedorapeople.org). I suppose I could look into doing that, until 1.16 comes out and I submit these packages to the official repos.
|