Ubuntu Mobile Internet Device (MID) Edition???? - G1 Android Development

There is a new ver of Ubuntu http://www.ubuntu.com/products/mobile. Could we possibly turn this into a workable ver for the G1?

hmmm, interesting
it looks nice, the g1 seems to fit the vauge specs they listed for MIDs (thats a new one for me wtf?)
hmm, OS companies fighting over market share on the G1.... IMAGINE
bhang

I hope we can do it.

I think that is geared more at netbook-esque products.

that would be an interesting project to get that running off the sd card in the same manor that people are running debian and connecting to a x windows session via vnc.

The new release (Jaunty) should work with some tweaking - there is a build for ARM processors.

Nickedynick said:
The new release (Jaunty) should work with some tweaking - there is a build for ARM processors.
Click to expand...
Click to collapse
ARM processor is one thing, but will you be able to make a call from within Ubuntu?

Well, it doesnt really matter right now anyways; it's not even out with a stable ARM version yet.

bornmw said:
ARM processor is one thing, but will you be able to make a call from within Ubuntu?
Click to expand...
Click to collapse
Why would that matter? You aren't going to make a call within Debian either, remember you'd be running Ubuntu on top of Android and tunneling into the GUI with VNC, it's not booting into Ubuntu or anything else. It's more virtualization than it is replacement.
If you get a call, it'll just interrupt your VNC session to let you answer it.

multiboot?
it would be great to have multiboot then. I've seen videos, of Iphone having multiboot, maybe it would be possible to have it on Gphone too?
it would be great to boot from MUbuntu. and, as Android is based on linux, maybe it would be possible to copy some of it's setting to make things easier?

carmelos said:
it would be great to have multiboot then. I've seen videos, of Iphone having multiboot, maybe it would be possible to have it on Gphone too?
it would be great to boot from MUbuntu. and, as Android is based on linux, maybe it would be possible to copy some of it's setting to make things easier?
Click to expand...
Click to collapse
It is possible to have this on a MID as I have seen it done (and held it in my hand) in a group that I work with at my job. We are currently working on putting Ubuntu as the standalone OS on MID's that match the specs listed. There are still a lot of "kinks" to work out around this, but it IS possible to get it going

ubuntu MID edition is geared towards ARMv7 devices, while the G1 is ARMv6. =(

andonnguyen said:
ubuntu MID edition is geared towards ARMv7 devices, while the G1 is ARMv6. =(
Click to expand...
Click to collapse
darn, i would have loved to multi-boot into this... looks awesome!
Hopefully there might be some chance of doing it??? lol

the phone stuff could happen
Who's to say that enough is known about the phone side of the dream to do it but if that part is "open source" or not, that phrase is getting thrown around a lot these days, it seems this and things like the nokia n800/810 are only open to things that don't matter much (gui, network,etc) while things like the phone side or the displays multi touch abilities.
Which sucks and looks like it could do exactly what htc/android/tmob wants, it willl keep us from complete OS replacements but who knows with enough time things can be reversed, so I can still hope.
Bhang

Related

Google Android on Kaiser?

I have not returned kaiser in the hope of being able to install Google's Android OS on kaiser. Hardware is great, but software/drivers suck.
It should be fairly easy because its open source and the first phone that HTC is bringing out is supposed to have the same processor.
Your thoughts?
I'm hoping that becomes a reality. Open source development would open up the floodgates! Imagine TouchFLO with an OpenGL 3D environment.... can't wait to see what happens here.
jerich007 said:
I'm hoping that becomes a reality. Open source development would open up the floodgates! Imagine TouchFLO with an OpenGL 3D environment.... can't wait to see what happens here.
Click to expand...
Click to collapse
You don't know much about OpenGL and linux do you
Next you'll be wanting to run Beryl on a pocket pc
Subliminal Aura said:
You don't know much about OpenGL and linux do you
Next you'll be wanting to run Beryl on a pocket pc
Click to expand...
Click to collapse
hahahahah, nice...or better yet, how about we get the kaiser to run the iPhone OS? after that maybe Santa Claus will show up...
Doug2873 said:
hahahahah, nice...or better yet, how about we get the kaiser to run the iPhone OS? after that maybe Santa Claus will show up...
Click to expand...
Click to collapse
Well Leopard does run on my PC now *Cough*
If Android is open source, I don't see why someone with compiler knowledge couldn't make it run on any ARM based handheld...
Because booting an OS kernel requires extensive access to hardware specifications, wich is not what Androïd is about at all.
The Android SDK is now available. They have also announced that they're giving away $10 million to developers that build apps for the platform. More info here:
http://www.openhandsetalliance.com/developers.html
There's also a video of Android up on YouTube now:
http://www.youtube.com/watch?v=1FJHYqE0RDg
For an early prototype this looks amazing.
now that the SDK is out, I will probably end up eating my own words in the next few months, assuming people on here get the appropriate hardware drivers for the kaiser from HTC.
Terrific
This Andoid is a very killer OS, a lot better than the crappy WM-X, Please HTC port it to Kaiser, if not, we can create a community for build a distribution based on android for the Kaiser.
Regards,
Taguapire
I would too like to see this new Android OS be brought to the Kaiser. If I understand correctly, they are providing all assets to the public with the SDK.
Yes your right
Subliminal Aura said:
You don't know much about OpenGL and linux do you
Next you'll be wanting to run Beryl on a pocket pc
Click to expand...
Click to collapse
I would love to have beryl on pocket pc. I've been waiting for years since I first saw beryl on youtube. The closest thing we have is the HTC Cube. Can't wait .
Theres talk of this all over xda-developers.
One guy is calling people to work on it here: http://forum.xda-developers.com/showthread.php?t=344076&highlight=android
And here's another thread:
http://forum.xda-developers.com/showthread.php?t=343730&highlight=android
I sure would like to see this happen. Since HTC is a partner in the open handset alliance I could see them releasing drivers for it. ... maybe...
Problem is - OS source or not, the hardware specs for many of the ICs in the Kaiser (esp. the Qualcomm MSM) are not publically available, which means that it isn't possible to write a driver for them.
This is why, for example, the Linux ports to previous HTC devices are (relatively) crippled - drivers for parts of the hardware can't be written because the hardware specs are not available.
Ah. That makes a lot of sense. Thanks for shedding some light on this issue, Entropy512.
cant see why you can't just take the msm7200 chipset specs off of the qualcomm site and build something. I mean it has generic arm processors and the other information should be able to gleaned from the windows app itself(radios,etc..)
Subliminal Aura said:
You don't know much about OpenGL and linux do you
Next you'll be wanting to run Beryl on a pocket pc
Click to expand...
Click to collapse
Nope Compiz....... Hehe
In fact the radio processor (ARM9) already runs a linux like rtos: L4 micro kernel and Iguana embedded OS. See here and here.
I think the chances might be relatively good:
1. HTC has announced they are building android based phones.
2. For the next year or so, chances are that available phone hardware is gonna be pretty much the same as what is available today (give or take).
So it follows that there are good chances that HTC will do most of the work for us. They introduce a new P4551 running Android, you guys do your ROM ripping magic, and take all the various drivers and introduce it into a generic Android ROM. Voila! Android on the Kaiser.
That said, who says Android hardware support on HTC devices is going to be any better than hardware support for WM6? HTC has already proved you can release a phone for a mature platform, with plenty of history, using almost no hardware acceleration for anything. Who says Android phones from HTC will be any better in that respect?
Cool OS
This is a very cool OS. I'm sure some of our great coders around XDA DEVELOPERS can come up with all kinds of ways to use this on many different phones. If they get the money more power to them. They deserve it. At least in my nubee opinion!

[Q] iphone emulator

would it be possible to do this? like run iphone apps on android?
kuci06 said:
hey guise, is it possible to run ps3 games on android?
Click to expand...
Click to collapse
i doubt it possible
It would have been available long ago if it can be done....
Overrange said:
It would have been available long ago if it can be done....
Click to expand...
Click to collapse
it seem like it would be possible ... they have emulators for almost everything else... why cant droids dual boot or run iphone os?
Im sure if it could be done, it would have.
Sent from my DROIDX using Tapatalk
It should be possible but there is not enough interest. If we compare with WINE and VMWARE there is an interest because many business applications require Windows, it is not really the same here. If you find like 10-30 skilled programmers with great knowledge of ARM architecture it might be possible, remember that some people managed to emulate PPC on a X86 like 5 years ago so crazier things has happened in the past.
Rikardn said:
It should be possible but there is not enough interest. If we compare with WINE and VMWARE there is an interest because many business applications require Windows, it is not really the same here. If you find like 10-30 skilled programmers with great knowledge of ARM architecture it might be possible, remember that some people managed to emulate PPC on a X86 like 5 years ago so crazier things has happened in the past.
Click to expand...
Click to collapse
well someone should do it asap.. there is some iphone apps i want that android does not have.
Heh, i think it's easier to make the apps then a freakin' emulator. You can start with contacting the devs of the apps you would like to have, and see if they're planing to release them on Android.
Sent from the future.
__________________________
The quality of my life would be greatly reduced if I did not have nostrils.

[Q] Dual boot Ubuntu and Android?

The dual-form nature of this item would fit a dual-boot scenario perfectly. Boot into Android when used as a tablet, boot into Ubuntu when docked. Just curious as to the possibility of this.
As far as I know, Ubuntu supports ARM architecture, so the Tegra 2 chip should work well with it. I'm not familiar with the touch screen driver support in Ubuntu, but I remember when I modded my old EeePC netbook with a touch screen, I was able to install third party touch screen drivers without any problem. Then again, even if the touchscreen won't work, when docked it has the mouse and keyboard anyway.
Are there any devs working on this, or know what the feasibility of such an endeavor would be?
Thanks!
Let me know when I can dual boot into Linux Mint.
I'm wondering if the webtop from atrix can be ported to work here.
Sent from my MB860 using Tapatalk
PGibbons999 said:
Let me know when I can dual boot into Linux Mint.
Click to expand...
Click to collapse
Linux Mint is based off of Ubuntu, so if you can get one working, you can get the other. However, vanilla Ubuntu has three times the user base, so I feel that would be the best bet, considering the much larger community support.
Definitely should be a project someone works on
Should be very easy to boot ubuntu alongside android. Got a lot of spare ram on these systems.
This of course means running ubuntu with a vnc server, and connecting to localhost. Which is far from optimal. But it works atleast. That's what I plan to do when I get the tablet.
Hell with wireless adb there's a decent chance I'll be able to run up eclipse and build apps directly to and from the tablet
nurre said:
Hell with wireless adb there's a decent chance I'll be able to run up eclipse and build apps directly to and from the tablet
Click to expand...
Click to collapse
Not unless we get an ARM SDK. There is nothing I would like more than to be able to develop for my tablet on my tablet, but right now it is not possible, even with Ubuntu.
Ubuntu 11.04 was just released with the new Unity interface standardized. I'm not sure how well the Tegra 2 can handle it, but there's also Unity 2D, which looks great.
And the touchscreen interface looks lovely:
http://unity.ubuntu.com/projects/utouch/
I'm getting excited, I really hope we can get this working!
nurre said:
Should be very easy to boot ubuntu alongside android. Got a lot of spare ram on these systems.
This of course means running ubuntu with a vnc server, and connecting to localhost. Which is far from optimal. But it works atleast. That's what I plan to do when I get the tablet.
Hell with wireless adb there's a decent chance I'll be able to run up eclipse and build apps directly to and from the tablet
Click to expand...
Click to collapse
This was already done on the Xoom I believe.
ZaelFaroe said:
Not unless we get an ARM SDK. There is nothing I would like more than to be able to develop for my tablet on my tablet, but right now it is not possible, even with Ubuntu.
Click to expand...
Click to collapse
A very good point :/, oh well. I can still do my normal development
nurre said:
A very good point :/, oh well. I can still do my normal development
Click to expand...
Click to collapse
From what I understand, Eclipse is actually built entirely on Java. Is anyone aware of a full java environment for ARM Linux?
The problem isn't eclipse being based on Java, the problem is the Android SDK plug-in (which specifies x86). It could be that you only need x86 for the emulator or for the USB drivers (I don't know), but it could also be something else where none of the plug-in will work on ARM. You could probably do development (write code), but you probably couldn't compile to apk or test at all. People on PPC Macs already have this issue. It appears that the source code for the SDK is publicly available so maybe we could get it working, but I think that might be more effort than it is worth at this point in time.
But this is getting off topic. We need Ubuntu (or other full linux distro) before the rest of this is even remotely possible.
They have Ubuntu working on some of the old Windows Mobile phones (check out the HTC Touch Pro 2 / Rhodium). Isn't that an ARM based CPU?
Yes, Ubuntu should have no problem working on ARM. The only questions on Ubuntu are the drivers and bootloader.
Getting linux up and running shouldn't be hard. It's done on most modern cell phones already. And the cut down versions are normally due to limitations in hardware.
The only part that sucks is the vnc localhost solution which is generally being deployed, it's not exactly optimal performance wise.
nurre said:
The only part that sucks is the vnc localhost solution which is generally being deployed, it's not exactly optimal performance wise.
Click to expand...
Click to collapse
The best way to deal with this problem would probably to get X11 working with Android's graphics stack (mostly OpenGL) as a backend- sort of like Xephyr, or Wayland's embedding of X11 (basing the work on Wayland's work might be the easiest, since they already use OpenGL ES).
That should deliver near-native performance, with full hardware acceleration.
I'd think the best way to structure it would be to have an app you launch within Android that connects to the X11 server and just pushes the final image to the screen (akin to what Wayland does). That should make it reasonable practical to move between Android and Unity (/Gnome/KDE/etc) without too much weirdities.
---
For doing Android development on Android, until there's a native SDK, you could use X11's network transparency to be running Eclipse on a remote machine via SSH, using port forwarding to allow the remote machine to connect back over the tunnel for ADB. It's ugly, but it should work (assuming you have a network connection... and a working x11!).
Initially thought this would be a huge reverse enginering job, but look and behold : http://developer.nvidia.com/tegra/news/linux-tegra-released !
Did anyone actually tried to run any Linux distro on it?
Is there any dev working on the question ?
Having a Android/Ubuntu tablet with an actual removable keyboard good me a huge advantage in terms of productivity/entertainment share... !!
nordicfastware said:
Is there any dev working on the question ?
Having a Android/Ubuntu tablet with an actual removable keyboard good me a huge advantage in terms of productivity/entertainment share... !!
Click to expand...
Click to collapse
+1 for that

[Q] Dual booting Ubuntu 11.04 and Android 3.0?

The dual-form nature of this item would fit a dual-boot scenario perfectly. Boot into Android when used as a tablet, boot into Ubuntu when docked. Just curious as to the possibility of this.
As far as I know, Ubuntu supports ARM architecture, so the Tegra 2 chip should work well with it. Ubuntu 11.04 was just released with the integrated Unity interface, which looks wonderful with the touchscreen: http://unity.ubuntu.com/projects/utouch/
The Unity 2D interface should fly on the Tegra 2, even if the Unity 3D mode lags.
Now I know that on the Xoom, we were able to run Ubuntu on a VNC server and connect to it locally, but that is obviously not an ideal solution, due to VNC's weakness, and the general inefficiency of it.
Are there any devs working on something like this so far? I am sure there would be a very sizable audience for something like this. I'd be happy to do any necessary testing, and I'm sure more will as well. I also wouldn't mind taking this as an opportunity to get involved with the dev community (I have a thorough background in CS, just no experience with this specifically), I'd be happy if anyone were to take me under their wing. =)
You're not the only one hoping for this: http://forum.xda-developers.com/showthread.php?t=1053641
I was just thinking about this yesterday. Dual booting Ubuntu and Android would make this the perfect device for me.
i would also love the ability to run linux on mine
I'm tempted to wait until this is guaranteed to happen before buying this thing. I need a new portable device for developing on the go, and I also want and need a Honeycomb device for testing apps and casual content consumption.
At the same time though, if anyone knows of a site or thread dedicated to making this dual-boot happen (similar to the dedicated Toshiba AC100 page here http://tosh-ac100.wetpaint.com/page/Ubuntu ), I wouldn't mind learning all about it and potentially help if I can, so please share.
Sent from my Milestone using XDA App
There are some devs who definitely pulled this off on the Atrix and I had Ubuntu on my phone so I'm sure we can get it on the transformer. I'll try to find them and see if similar methods can be used.
It'll take years but I don't see why it wouldn't work. If I can do this on my old ass wm6.5 phone then it's possible on the TF!
Maybe it wont take years, but more of these tablets have to hit the market. Still so many people waiting on their preorders, me included.
I think that there might be quite the interest in making this happen. I remember reading somewhere that Ubuntu allready runs on the Tegra2, so why should it be far into the future before we see it running on the Transformer?
Sorry for any typos. I have fat fingers, a 4" screen, a small child and a dictionary gone wild...
here's to hoping
So far i'm quite impressed with this little tablet. It crunches bytes as fast as i can throw them, and customizing it was easy enough. Although with the dock station and Tegra 2 it does feel more like a netbook than a tablet.
Android 3.0 IMO is the best compromise between a desktop and mobile phone OS. Although it's expandability is not quite what i would wish it to be. Possibly once more developers gear their programs for the higher resolutions and more powerful CPUs this will change. For now dual booting Ubuntu and Android would be perfect.
I'm on board with any project coming about to make this happen, and would offer up my hardware and feedback for beta testing. Hope to see a dedication in this direction soon!
Has anyone tried the method in the xoom development forums?
Sent from HTC Inspire 4G via XDA Premium.
gordec said:
Has anyone tried the method in the xoom development forums?
Sent from HTC Inspire 4G via XDA Premium.
Click to expand...
Click to collapse
I haven't seen the post, but I'm assuming you mean VNC?
Zach Alt said:
I haven't seen the post, but I'm assuming you mean VNC?
Click to expand...
Click to collapse
Yeah, it's VNC. That's not that hard, we're talking about straight booting INTO Ubuntu.
i have this image from my desire, which boots linux xlde (or something) i cant get it to connect to that image. Pockecloud just get Server disconnected.... maybe another image.. actually that was loading it from removable MicroSD, im now going to try copying to the internal memory "SDCARD" as that would be what the script would have orignally been setup for. I will post results as soon as this has finished pasting the files...
EDIT: still cant get this to work, seems like terminal is ending too quickly which i think means the loopback memory doesnt work, i think thats how it works anyway.
No lock with WYSE pocket cloud or android vnc, i think we need another build for honeycomb, well not so much the OS but the Tegra chip instead.
ubuntuforums.org
There is a thread over at ubuntuforums.org regarding this matter, though they have a different take on it.
One of the posts state:
Re: Asus Eee Pad Transformer
I plan to get one (not available in my region yet, plus I hear there'll be a 3G version next quarter) and install Ubuntu on it, albeit with KDE/Gnome instead of Unity.
There's not technical reason it can't run Ubuntu, it's just a matter of getting the boot loader working. The instructions seem simple enough, although dual booting with Android might be a little more challenging.
If anyone does get one and install Ubuntu on it, please let us know how it goes.
Click to expand...
Click to collapse
Maybe it's not all that farfetched getting Ubuntu to run on this device, or any other Tegra2 base tablet.
The original thread can be found at:
http://ubuntuforums.org/showthread.php?t=1741103&highlight=eee+pad+transformer&page=1
looks like dual booting may be fairly difficult; I wouldn't mind soloing ubuntu touch os on mine...
I think dual booting may be difficult, but I think chain booting (right terminology?) from Android first and then into Ubuntu would probably be possible.
I don't think many people understand how hard it will be to create a bootable version of Ubuntu. VNCing is easy for the most part.
Would it be possible to use the motorola xoom guide to get ubuntu running with vnc on the eee transformer?
Sorry for any typos. I have fat fingers, a 4" screen, a small child and a dictionary gone wild...
Is the VNC version that bad? Is it very slow or the picture is not full color? I'd like to use it maybe for Open Office (or something lighter) and some programming in text editor.
Looks like there has been significant progress on this. backtrack has been released for arm.. its a security-centric distro, but its built on an ubuntu base.
I'm downloading the img now.. dont know about dual boot though. guess someone needs to port grub over first =)
I cant post links....but a search for 'backtrack5 xoom' should get you there.

Since we've had Linux boot on the Surface RT, will Android at some point?

Yeah most stuff doesn't work on Linux at the moment but maybe?
Today successfully booted up windows 10 arm on my surface rt.
I am so hasppy android ports are coming to this tablet
pedrofssf94 said:
Today successfully booted up windows 10 arm on my surface rt.
I am so hasppy android ports are coming to this tablet
Click to expand...
Click to collapse
well dang
FoxyDrew said:
Who told you android ports are coming to this tablet? lol glad your optimistic though
Click to expand...
Click to collapse
Actually yes, Android 5.1 is coming to this tablet.
Discord - A New Way to Chat with Friends & Communities
Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.
discord.com
pguarache said:
Actually yes, Android 5.1 is coming to this tablet.
Discord - A New Way to Chat with Friends & Communities
Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.
discord.com
Click to expand...
Click to collapse
You do know no one can see that because you would need to be in the discord server that we dont have an invite to lol
In theory It would work...
Older versions supported ARM32 pretty well and since Linux is already working It would not be harder to port Android to The surface RT and 2.
The problem is that these devices are almost 10 years old and few people care about them anymore.
Even with Android installed running apps with 2gb of very aged memory would prove to be a pretty bad experience...
Nicknackpaddywack101 said:
In theory It would work...
Older versions supported ARM32 pretty well and since Linux is already working It would not be harder to port Android to The surface RT and 2.
The problem is that these devices are almost 10 years old and few people care about them anymore.
Even with Android installed running apps with 2gb of very aged memory would prove to be a pretty bad experience...
Click to expand...
Click to collapse
Eh, I've run worse. I have a moto E LTE running android 9 (RR Custom Rom based on a GO version of android) and it runs fine (1gb of ram and a worse cpu than the RT) sure it would be nice to have more ram but it works.
WinDVD said:
Eh, I've run worse. I have a moto E LTE running android 9 (RR Custom Rom based on a GO version of android) and it runs fine (1gb of ram and a worse cpu than the RT) sure it would be nice to have more ram but it works.
Click to expand...
Click to collapse
Yes, I understand your point. But the fact is that it had Android to start with, with the surface RT you have to use loopholes and bugs to get Linux working in a inefficient way and even the currently working(sort of ) Raspbian based Linux system has a bunch of bugs and missing drivers etc. Power control lacks behind Windows RT (mentiond here:https://forum.xda-developers.com/t/porting-chromium-to-windows-rt.2095686/post-87719273. The sad fact that this device is already 10years old means that it is unlikely people would pay attention to it and use it to develop Android, and even with Android installed the experience would be very limited due to the ram. support would be almost non-existent similar to what happened to the windows phones that got unofficial CM versions. Developers are already moving away from ARM32 to newer ARM64 and a few years later most apps would have a minimum api equivalent to android 6.
There is still a silver lining though. RT devices are dirt cheap since they are almost or practically useless now and Android still has excellent backward compatibility. Anyone who really has interest and the time could pick up the pieces of the Linux project and move on with doing it, but it still would not be easy.
Maybe a crowdfunding project could give devs some incentive?
But for now you could try to run a vm in linux or simply run their linux equivalents. Chromium, firefox, WPS office etc. Raspbian is compatible wih the snap store too, so you could use it just like ubuntu.
I am not trying to pour cold water on your idea, and I really look forward to this project taking off. However, there ultimately is a reason why Windows RT and their RT devices failed to take off.
working with the progress made with opensurface-rt, we managed to get android 7.0 booting on the surface RT using the 3.4 kernel, got wifi working, but minor gpu bugs that make it an unstable setup. had a play about with 4.4 and 5.1 too. android 7.1.1 and above have critical gpu bugs which make it completely unusable. and probably unfixable. development into getting other devices such as sound, camera, bluetooth etc has yet to be done. so far we have, screen, touch screen, type/touch keyboard, 2d/3d gpu working. recorded a quick video of it running
maybe it would be possible to get all things sorted but it's quite the task.
jethro tarw said:
working with the progress made with opensurface-rt, we managed to get android 7.0 booting on the surface RT using the 3.4 kernel, got wifi working, but minor gpu bugs that make it an unstable setup. had a play about with 4.4 and 5.1 too. android 7.1.1 and above have critical gpu bugs which make it completely unusable. and probably unfixable. development into getting other devices such as sound, camera, bluetooth etc has yet to be done. so far we have, screen, touch screen, type/touch keyboard, 2d/3d gpu working. recorded a quick video of it running
maybe it would be possible to get all things sorted but it's quite the task.
Click to expand...
Click to collapse
Wow! Nice work! Would be interested to know the team behind this marvelous project. (since you mentioned 'we')
Also probably should embed the boot screen with your team's name...

Categories

Resources