Hey guys, I would have written this email earlier, but I'm currently overseas enjoying the effects of global warming (since when does it not snow in the arctic?). I had a few spare minutes and decided it might be a good time to sit down and finally write the damn thing. Right, so I just wanted to get a few things cleared up about where I want to take the AUR, short and long term. In the short term, I'd like to keep things realistic. What can and can't we do with the current level of interest in the AUR? Big sweeping changes are out of the question, the userbase is quite large and the AUR is something very prominent in Archland. I haven't read an Arch review that doesn't mention the AUR in quite a while, so we must've got something right. We should be somewhat cautious about large public-facing changes and introducing regressions. Short term fast-track changes should be things like bugfixes, and admin-side changes, and small no-brainer type stuff. Keeping with that, I'd like to tweak the interface a bit. It's always struck me as a tad clunky, and could use some refinement. Parts of it are buggy too. Another small welcome change would be fixing those nasty URLs. Changes here should be backward-compatible, since AUR links are likely pasted in all sorts of places. The AUR's long-term future is less certain. One thing I'd like to get cleared up is this stuff about AUR2. First off, I'd like to know how many separate people/groups are currently coding some AUR-successor. I admit that I probably made a mistake in even introducing the idea of recoding the AUR, and after some further thought it's probably in our best interests to improve upon what we have, and be satisfied with it before any kind of recode is seriously considered. If you're currently working on a 'new' AUR, now's a good time to speak up, so your hard work doesn't go to waste. That said, I've always felt that the AUR's codebase is on a pretty shaky foundation, and needs some serious rearranging. One of my biggest long-term goals is to functionalize the code, and separate the HTML from underlying logic, particularly SQL queries! As it stands, most of it looks like HTML/SQL/PHP soup, a lot of it quite repetative. This is really bad programming practice for a whole shizload of reasons, security among them. Another long-term issue is cleaning up the data. A lot of the users are dead, and packages uncared for. The idea of package maintenence/ownership might be interesting to reexamine and rethink at some point, the results might really benefit the community. There is a whole whole lot more that belongs on both lists, but taking it slow, steady, and simple, is best. The AUR is still growing and maturing as a project, let's not try to make it grow up overnight. Lastly, I welcome you to send patches and take advantage of aur-dev. Developing is always more rewarding when you have others to put their momentum in the same direction. -- Simo Leone Arch Linux Developer
Simo Leone さんは書きました:
Hey guys,
I would have written this email earlier, but I'm currently overseas enjoying the effects of global warming (since when does it not snow in the arctic?). I had a few spare minutes and decided it might be a good time to sit down and finally write the damn thing.
Right, so I just wanted to get a few things cleared up about where I want to take the AUR, short and long term.
In the short term, I'd like to keep things realistic. What can and can't we do with the current level of interest in the AUR? Big sweeping changes are out of the question, the userbase is quite large and the AUR is something very prominent in Archland. I haven't read an Arch review that doesn't mention the AUR in quite a while, so we must've got something right. We should be somewhat cautious about large public-facing changes and introducing regressions. Short term fast-track changes should be things like bugfixes, and admin-side changes, and small no-brainer type stuff. Keeping with that, I'd like to tweak the interface a bit. It's always struck me as a tad clunky, and could use some refinement. Parts of it are buggy too. Another small welcome change would be fixing those nasty URLs. Changes here should be backward-compatible, since AUR links are likely pasted in all sorts of places.
The AUR's long-term future is less certain. One thing I'd like to get cleared up is this stuff about AUR2. First off, I'd like to know how many separate people/groups are currently coding some AUR-successor. I admit that I probably made a mistake in even introducing the idea of recoding the AUR, and after some further thought it's probably in our best interests to improve upon what we have, and be satisfied with it before any kind of recode is seriously considered. If you're currently working on a 'new' AUR, now's a good time to speak up, so your hard work doesn't go to waste. That said, I've always felt that the AUR's codebase is on a pretty shaky foundation, and needs some serious rearranging. One of my biggest long-term goals is to functionalize the code, and separate the HTML from underlying logic, particularly SQL queries! As it stands, most of it looks like HTML/SQL/PHP soup, a lot of it quite repetative. This is really bad programming practice for a whole shizload of reasons, security among them. Another long-term issue is cleaning up the data. A lot of the users are dead, and packages uncared for. The idea of package maintenence/ownership might be interesting to reexamine and rethink at some point, the results might really benefit the community.
There is a whole whole lot more that belongs on both lists, but taking it slow, steady, and simple, is best. The AUR is still growing and maturing as a project, let's not try to make it grow up overnight. Lastly, I welcome you to send patches and take advantage of aur-dev. Developing is always more rewarding when you have others to put their momentum in the same direction.
-- Simo Leone Arch Linux Developer
Take a look here: http://git.nagi-fanboi.net/?p=aur.git;a=summary Some of what you ask has already been done by myself and Loui. Feel free to grab parts of code you think is useful. I can't suggest merging the branch because this was based off a previous version of the AUR. I'd love to help rebase/rework the code, but I lose internet in two days and won't be online for about a month (until I find an apartment). - tardo
I forgot to add... here's a demo of what that git tree looks like: http://aur.nagi-fanboi.net/
On Jan 4, 2008 2:07 PM, Shehzad Qureshi <shezq23@gmail.com> wrote:
I forgot to add... here's a demo of what that git tree looks like:
I think this looks great! Some of the little things you've put in really add to usability. I really like the stuff such as the search form in the header (or you know, on every page), the way logging out is just a form on the current page and how you got rid of the useless get variables. Love to see most of this in cactus' repo. :) -- Callan 'wizzomafizzo' Barrett
On Jan 2, 2008 5:51 PM, Simo Leone <simo@archlinux.org> wrote:
I admit that I probably made a mistake in even introducing the idea of recoding the AUR. I think introducing the idea was the best thing to do! After two months of trying to fiddle with the current AUR code I realised that it really isn't worth fixing. I assumed that development slowed because the devs came to that realisation.
I think the development manpower would be much better spent working on a completely new system, especially since we've given the interface a bit of a facelift. The only dev on current code I could see making sense are critical bug fixes. I see the next generation of AUR as a network app primarily accessible via CLI tools, but also accessible via other interfaces (web,gtk, etc). I have some other crazy ideas, that might be out of topic for now. Ha!
Another long-term issue is cleaning up the data. A lot of the users are dead, and packages uncared for. This is another great reason to start fresh. I say toss the old DB once the new system is ready.
Afaik there are two AUR2 projects. The first one was the "br" [1] one that was started ages ago, but the developers are very quite and it's hard to get a hold of them. I tried to make them more active in terms of communication but it seems I failed. I spoke with one of the developers and he said they were very close to finishing but I haven't seen any of them since then. Having looked at the code it seems they simply tried to replicate the current AUR in Django so there probably weren't many advantages over the current AUR besides cleaner code. There's also the newer project [2] which seems to be developed only be me now, but Thralas was also active at the beginning. It's getting close to replicating the functionality of the current AUR, but there's still lots to be done.When designing it we aimed for it to be more flexible and generally just more thought out than the current AUR. I'm not a TU or developer so it's a bit hard for me to think of ways to improve the interface for TUs, especially since the cvs system and web interface seems to be only linked by the database. There might be some more information on the wiki; http://wiki.archlinux.org/index.php/AUR_2 The current AUR requires a total rewrite either way, so I don't think there's any point investing much time in adding any features to it. One of the biggest issues (afaik, since I haven't looked at the db schema) is the mixing of business logic and presentation. It's really aweful to try and hack the code when it's like that. The Django framework, as most of you probably know, is really easy to use and fast to develop with, so I think it would be a better investment to focus on any of the new projects. [1] http://aur2.archlinux-br.org/ [2] http://repo.or.cz/w/aur2-xilon.git
I thought it might be a good idea to give more insight to people who can't setup django or simply don't want to. The following screenshots were taken from the current (as of 04.01.2007) snapshot of my repository. Package listing/Main page: - http://img184.imageshack.us/img184/9740/200801042315061679x527skz6.png When searching, if there's only one hit it goes straight to that package's page. Upload form: - http://img301.imageshack.us/img301/4172/200801042317511679x588sod7.png Trying to upload an invalid package: - http://img177.imageshack.us/img177/4753/200801042318021679x787sbt3.png It also checks that at least one set of checksums exist. The parser is based on namcap's parsepkgbuild, except it outputs information in a different format (python). Package details of the newly uploaded package: - http://img112.imageshack.us/img112/5418/200801042319181665x1016pl8.png None of the files (PKGBUILD, tarball, sources) are saved to disk yet, since we're still working out how to go about it. Dependencies from the official repos don't get recorded either, since there's no access to the main DB and some alterations to the AUR DB would be required[1]. Account page: - http://img184.imageshack.us/img184/5589/200801050002271679x612sqz5.png After logging in directly (clicking on the login link), the user is redirected to this page. Account page (new user): - http://img521.imageshack.us/img521/2258/200801050006141679x609sam8.png The PKGBUILD link directs to the user to the AUR User Guidelines[2] and the "these requests" link directs the user to the requests forum[3]. These links are hardcoded in the template. Login form (with errors): - http://img131.imageshack.us/img131/7356/200801042348081679x505slp3.png Registration form: - http://img137.imageshack.us/img137/5193/200801050004291679x529swp2.png Package listing (logged out): - http://img155.imageshack.us/img155/3650/200801042328321679x546soh9.png I think that covers it. Suggestions/flaming is, of course, welcome. [1] http://archlinux.org/pipermail/aur-dev/2008-January/000021.html [2] http://wiki.archlinux.org/index.php/Arch_Packaging_Standards [3] http://bbs.archlinux.org/viewforum.php?id=38
Oooh, purty
participants (8)
-
Aaron Griffin
-
Callan Barrett
-
Loui
-
Sebastian
-
Sebastian Nowicki
-
Shehzad Qureshi
-
Simo Leone
-
tardo