Giter Site home page Giter Site logo

gnuroot's Introduction

gnuroot's People

Contributors

corbinlc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gnuroot's Issues

Will not launch on android 5.1

I was happily running gnuroot with a wheezy instance on an android 5.0.4 nexus 5. Yesterday the device upgraded to android 5.1 and now I am unable to launch a rootfs. I have removed and re-installed gnuroot and wheezy, also tried gentoo to see if it was a wheezy issue, it is not. I have removed and cleared all cache and then re-installed gnuroot as well, same results.

I can create a new rootfs. At least it seems to do it and then the option to launch that rootfs is there. But if I try to launch it, with or without fake root, the terminal comes up for a second and then I am back at the home screen. There is no usable output on that terminal when it comes up.

Outside of gnuroot Jackpal terminal still runs fine.

I have also tried moving around the system both in an adb shell and in jackpal, but that is of limited usefulness as the device is not rooted.

Is there anything I should try or capture on this non-rooted device that would help debug the problem?

opengl crash

all known to me ogl apps keep crashing, even though ogl packages seem to be installed. I tried to run Blender on SGS3 - without success. The same about Gwenview ogl transitions or compiz kde. :C

Overwrite Android with GnuRoot???

I have a quad-core unit. Is there any way I can remove the Android OS and instead install a Linux OS, e.g. Wheezy with a light weight gui?

I would like to dedicate all the resources of my unit 100% to Linux. I am aware that if I press the restore button then I will reinstall Android and overwrite the Linux OS I have installed, so that must be avoided if I don't want to start all over again.

Thank you so much for the great work you are doing with this!

Kind regards,

Ole

errors installing Oracle Java 7 on gnuroot/wheezyx (Galaxy S4)

When trying to install Oracle Java 7 on gnuroot/wheezyx (Galaxy S4) as 'fake root', I get the following errors:

  • /usr/bin/mandb: can't set effective uid: Permission denied
  • Can not write log, openpty() failed (/dev/pts not mounted?)

I used the following commands for the install:

echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886
apt-get update
apt-get install oracle-java7-installer

The installation output looked like:

...
The following NEW packages will be installed:
  binutils gsfonts gsfonts-x11 java-common locales oracle-java7-installer
0 upgraded, 6 newly installed, 0 to remove and 0 not upgraded.
Need to get 13.7 MB of archives.
After this operation, 33.4 MB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://ftp.debian.org/debian/ wheezy/main binutils armel 2.22-8 [4550 kB]
Get:2 http://ppa.launchpad.net/webupd8team/java/ubuntu/ precise/main oracle-java7-installer all 7u51-0~webupd8~7 [18.7 kB]
Get:3 http://ftp.debian.org/debian/ wheezy/main java-common all 0.47 [66.1 kB]
Get:4 http://ftp.debian.org/debian/ wheezy/main locales all 2.13-38+deb7u1 [5714 kB]
Get:5 http://ftp.debian.org/debian/ wheezy/main gsfonts all 1:8.11+urwcyr1.0.7~pre44-4.2 [3364 kB]
Get:6 http://ftp.debian.org/debian/ wheezy/main gsfonts-x11 all 0.22 [10.6 kB]
Fetched 13.7 MB in 15s (913 kB/s)
Preconfiguring packages ...
Can not write log, openpty() failed (/dev/pts not mounted?)
Selecting previously unselected package binutils.
(Reading database ... 12247 files and directories currently installed.)
Unpacking binutils (from .../binutils_2.22-8_armel.deb) ...
Selecting previously unselected package java-common.
Unpacking java-common (from .../java-common_0.47_all.deb) ...
Selecting previously unselected package locales.
Unpacking locales (from .../locales_2.13-38+deb7u1_all.deb) ...
Processing triggers for man-db ...
/usr/bin/mandb: can't set effective uid: Permission denied
Can not write log, openpty() failed (/dev/pts not mounted?)
Setting up binutils (2.22-8) ...
Can not write log, openpty() failed (/dev/pts not mounted?)
Selecting previously unselected package oracle-java7-installer.
(Reading database ... 13056 files and directories currently installed.)
Unpacking oracle-java7-installer (from .../oracle-java7-installer_7u51-0~webupd8~7_all.deb) ...
dpkg: error processing /var/cache/apt/archives/oracle-java7-installer_7u51-0~webupd8~7_all.deb (--unpack):
 subprocess new pre-installation script returned error exit status 1
Selecting previously unselected package gsfonts.
Unpacking gsfonts (from .../gsfonts_1%3a8.11+urwcyr1.0.7~pre44-4.2_all.deb) ...
Selecting previously unselected package gsfonts-x11.
Unpacking gsfonts-x11 (from .../gsfonts-x11_0.22_all.deb) ...
Errors were encountered while processing:
 /var/cache/apt/archives/oracle-java7-installer_7u51-0~webupd8~7_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@localhost:/#

Gnuroot Bash is terminated when switching to another android app and back to the terminal emulator

First of all, thanks for your work.
As I have written in the title, I have the folliwing problem on Android lollipop arm:
I launch a gnuroot wheezy bash from the gnuroot app. Terminal emulator turns up, i can run commands, all fine. I then switch to droidedit or google chrome to write a script/read some docs. Then I go back to the terminal emulator app, but the shell is gone. Seems like android has terminated the bash process because of memory load.
Is there a way to mark the bash process as an 'important' process that should not be killed but suspended to flash or kept in memory? That would be useful for me.
I think there must be a way as memory-wasting apps like whatsapp (needs 50MB) run all the time.

Stopped working after Xperia update

Since Xperia did a system update I get the following

/system/bin/sh: /system/etc/mkshrc[9]: getprop: not found
/system/bin/sh: /system/etc/mkshrc[10]: id: not found

Even uninstalling and reinstalling gnuroot and wheezy doesn't resolve this and I need to type full paths eg "/system/bin/ls" while I can't find apt-update.

does gnuroot run on arm64?

This is a question, not an issue. Does gnuroot run on arm64 (both with an android host and and a Debian target)? If not, will it soon? (I'm not an arm expert. Does arm64 support running arm32 code, the way amd64 will run i686 code.) The reason that I'm asking is that I'm about to buy a new phone and am trying to decide whether to go with the future (arm64) or stick with the present (arm32) for now. Ability to run gnuroot is crucial in this decision.

rootfs on external SD card

I try to use GNUroot, thats amazing.
I installed many packages, my phone's internal storage fills up rootfs.
Do you have something way to move rootfs to external SD cards ?

ssh, rsync, etc.

Hi,

I am sure this is a silly problem/question. How can I use ssh, scp, rsync, etc. to connect to remote computers through GNURoot and one of the linux distros?

Thank you for all of the help in advance. I can't seem to find anything with my google searches.

Best tools for helping diagnose problems?

Hi,
I'm a long time unix/linux person but new to proot and GNUroot's implimentation of it. Looking for any links to help me get up to speed as well as tool suggestions.

More details:

I have been running linux on a rooted android in a chroot for over 3 years, but would like to move to a non-rooted solution so it is easier for others.
I am happy to dig aroud and see if I can solve my own issues but I am wondering what you recommend as the best tools for capturing usefull logs/traces/details when something does not work in the proot?

My goal is to get emacspeak working. It does run fine in the rooted device chroot (audio is handled on the android side over a port created by nc), but not in GNUroot Wheezy. There are a number of users who would benifit from a solution where you don't have to root the phone.

Again, not looking for anyone else to fix the problem, just looking for a leg up on getting started debugging proot issues.

Thanks,
Greg

Apache 2 will not start

I couldn't find any details on this specific issue, but I cannot get Apache to start up. It is giving me some operation not permitted error and permission denied errors when it tries to start the server.

See screenshot.

screenshot_2014-03-13-15-30-09

GNUroot+wheezyx not working w/o real root

Hello World,

am using latest GNUroot on a SGN III, with a fully rooted Alliance ROM.
I can't get any(!) terminal program to work, no matter how hard I try, or sudo to execute, w/o a real root.
The former always complains about permission/access problems with /dev/pts and the later that sudo (which I installed via apt-get) does not have ownership ID '0' (for "root").

I don't understand why I have to make due with all this nonsense, as I have a rooted phone (like so many others).
Unfortunately all the other Linux/Android distros depend on loop'ed solutions, which won't work on my kernel.
So for now I'm stuck with GNYroot and wheezyx, but what good is that to me if I can't get somethign as simple as an Xterm started (setuid problems).
Always its the same old story about lacking permissions.

Please(!) make a GNUroot for those of us who have rooted phones, so that we may finally be able to use true Linux on our thousand $ devices!

PS: Please don't blame this on PRoot, because even if PRoot is to blame, it doesn't do us users any good. If its broke its broke and we root'ed folks shouldn't even have to rely on such crouches.

gnuroot w/o playstore

I'd like to setup wheezy in gnuroot w/o google playstore (not active on my wifi only phone). I've downloaded the wheezy rootfs, but gnuroot won't recognize it on my sdcard, even when unpacked. Is there a way to setup w/o the plastore?

Install R add-on packages on GNURoot Fedora

yum install R
yum install gcc* (install all compiler)
yum install make ( update make)

but when install add-on package using install.packages() in R environment or using R CMD INSTALL in Fedora, I persistently encountered following error

collect2: fatal error: cannot find 'ld',
compilation terminated

root password?

Hi all

just discovered this and its amazing

what am i missing though, whats the default root password?

thx

Z

delete rootfs button needs a safeguard

Gnuroot is doing a great job at transforming my tablet into a proper linux production machine -- with one hook: especially with a touch screen, it's just too easy to accidentally hit the "delete rootfs" button. This happened to me yesterday, and without any further warning and request for confirmation, my whole debian system was gone. It's like having a large "sudo rm -rf /*" button on your desktop...

Request: Would it be possible to make the gui client ask for confirmation of delete requests? It wouldn't inconvenience users much, as the function won't be used often, and might save a lot of pain. Thanks for considering!

select error in Android 3.1happens often

I'm using GNURoot 0.1.3 in Android 3.1 on an unrooted Samsung Galaxy Tab. With Wheezy.

I run Emacs and ssh.

Quite often I get "select: Unknown error 514", and the program I run is terminated. Usually, this happens after unlocking the sysyem after some inactivity.

Do you know of this issue? Can it be fixed? What information can I provide to hrlp?

Feature request: Support for arm-hf (hardware floating point) architecture

Hi corbin,

first off, thanks for your work :)
I would be happy to have a debian image that is armhf in addition to armel, that is already available. I want to run some dsp-related programs, like sox.
Probably, i could try to fiddle around by myself. I already have the armel wheezy, which has multiarch support and also, i could try to debootstrap (hoping that this works in proot) what i need. It is that i do not know what to do then, if i had a debootstrapped image, how to include it into the list of distros of gnuroot.
Do you have any ideas? That would help me.

Virtualbox-dkms is not working on gnuroot wheezyx86

Hey guys, I Have a Intel Atom Tablet, and it is a X86 device , i installed GNURoot X86 etc and everthing is fine.. then i installed the virtualbox And all dependencies... virtualbox give me a error when installing virtualbox-dkms.. When i click in virtualbox icon in workspace, i create a virtual machine to run windows 8 (My device is a is a tablet with intel atom z2520 x86 ,2 GB RAM 32Gb internal memory) , i have the error 1908 (Kernel drivers not installed) , and i need help , from users and the gnuroot creator (if is it possible) And i really need to make this works.

Sorry for bad english.. i'm brazilian :)

gpm install fails on wheezy

My USB keyboard and mouse both work in Android. In gnuroot wheezy only the keyboard works. I'd like to get the mouse to work in a console program. I tried to install gpm but it fails (permission denied error). Nano can use a mouse if I get gpm installed? Is there any way to get the mouse working in wheezy? Are there other debian programs besides nano that I can test with? I'm working on various items with gnuroot: www.TurboControl.com/gnuroot.htm

gnuroot wheezy

hello!
first I have to say gnuroot its a wonderful app, because I already have a real linux distro installed in my phone (without root). now I can use the shell prompt (for example install packages trough apt-get..., browse through the directories, etc.)

you know, maybe this is weird, but also I would like to use packages like feh (open and view pictures), mplayer (play audio and videos), rtcwake, make a basic script, etc; but then there were some errors (so I am asking for help):

for example:

  • I installed feh, but when I try to use it:

root@localhost:/storage/sdcard1/imagen# feh image-00.jpg

feh ERROR: cant open X display. It is running yeah?

  • I installed x window, xfce4 but when I execute:

root@localhost:/# startx

X.Org X Server 1.12.4
Release Date: 2012-08-27
X Protocol Version 11, Revision 0
Build Operating System: Linux 3.2.0-4-mv78xx0 armv5tl Debian
Current Operating System: Linux localhost 3.4.0 #1 PREEMPT Wed Mar 27 19:45:12 CST 2013 armv7l
Build Date: 17 December 2013 09:56:27PM
xorg-server 2:1.12.4-6+deb7u2 (Julien Cristau [email protected])
Current version of pixman: 0.26.0
Before reporting problems, check http://wiki.x.org to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Sun Mar 23 20:25:27 2014
(==) Using system config directory "/usr/share/X11/xorg.conf.d"

Fatal server error:
xf86OpenConsole: Cannot Open /dev/tty0 (no such file or directory)

Please consult the X.org foundation support at http://wiki.x.org for help

Please also check the log file at "/var/log/Xorg.0.log" for additional information

Server teminated with error (1). Closing log file.

/usr/bin/xinit: giving up
/usr/bin/xinit: unable to connect to X server: Connection refused
/usr/bin/xinit: server error

root@localhost:/#

so could you please help me how to use correctly this packages with gnuroot?
thanks a lot

Knox problem

On my Samsung galaxy note 10.1 (P605) gnuroot is getting blocked by knox, accused of trying to access system without permission (during apt-get, and after trying to ping - here I get message: setuid: Permission denied)

pulseaudio doesn't start

Assertion 'setresgid(gid, gid, gid) >= 0' failed at daemon/caps.c:64, function pa_drop_root(). Aborting.

:c Any idea how to walk this around? I've already configured PCs in my home to accept pulseaudio remote clients so It'd be really awesome to play music from phone through PCs.

tried to launch pa as fake root as well as normal user

apt-get upgrade failing on Wheezy

On a newly created chroot:

  • apt-get update
  • apt-get upgrade

It goes through the upgrade as normal and then fails when trying to upgrade tzdata:

Preparing to replace tzdata 2013h-0wheezy1 (using .../tzdata_2014a-Owheezy1_all.deb)...
Setting up tzdata (2014a-0wheezy1) ...
/var/lib/dpkg/info/tzdata.postinst: 32: /var/lib/dpkg/info/tzdata.postinst: restorecon: Operation not permitted
dpkg: error processing tzdata (--configure):
subprocess installed post-installation script returned error exit status 2

New Window doesn't work on Wheezy

With a fresh image of wheezy, using a single window works fine*, but if I open a new window I get:

/system/bin/sh: /system/etc/mkshrc[9]: getprop: not found
/system/bin/sh: /system/etc/mkshrc[10]: id: not found
@android:/ $

And this new window fails to run any commands, for example:

@android:/ $ ls
/system/bin/sh: ls: not found
127|@android:/ $ /bin/ls
/system/bin/sh: /bin/ls: not found
127|@android:/ $

Version: GNURoot 0.1.4 / Gnuroot Wheezy Package 0.0.5
Device: Nexus 7 (2013) / razor-userdebug 4.4.4 KTU84P

*: (and I can close all windows, then relaunch the terminal emulator by running the GNURoot app again, and the first window will again be fine)

"git push heroku master" on WheezyX errors out with "...PRIV_END: seteuid: Permission denied..."

When using git on wheezyX, I get an error when I try to use git to push files, as shown below:

root@localhost:/local-dev/ror4/ror4s4# git commit -m "heroku apps:create"
# On branch master
nothing to commit (working directory clean)
root@localhost:/local-dev/ror4/ror4s4# git push heroku master
PRIV_END: seteuid: Permission denied
fatal: The remote end hung up unexpectedly
root@localhost:/local-dev/ror4/ror4s4#

apk outside the store?

Any way to download the apk outside the store? I have a tablet without a store here...

Cannot run executables that are outside of the fake root (like ping)

When I try this:
/system/bin/ping
From within GNURoot, it fails with a segmentation fault.

When I do the same, in a standard terminal (not within GNURoot)
/system/bin/ping
works properly.

What is the best way to start debug? What is the proper verbosity setting for proot to get useful information?

Thanks,
Corbin

Question: binfmt_misc support/emulation possible ?

I have two tablets that run nicelly your fantastic software: one uses a Tegra 3 ARM processor, another am Atom x86 processor, and so far. The Atom tablet could install Wine and run several programs without issues: Even the MediaCoder, which is an intensive CPU program, runs like a charm.
However, the same for ARM don't work, since the Qemu and Wine combo fails due the binfmt_misc configuration. A very old package of Wine (0.9.11) with a patched Qemu, which don't need the binfmt_misc, runs on ARM tablet, but is a little slow.

I know that proot and GnuRoot don't support kernel modules, but in theory the proot emulator support the binfmt_misc API calls. It is possible to create a special library to fake the binfmt_misc module with the necessary support to make softwares, like Wine, to run with Qemu in ARM ?
Or it is beyond of scope of this kind of software ?

GUI's in fedora

Does GnuRoot support GUI's? I installed TclTk and tried to run a sample TCL script but got some errors: "no display name and no $DISPLAY environment variable". Should this work? Thanks.

where should I put the *.obb files?

When I press "Create New Rootfs", It saids "Download failed because the resources could not be found', So I directly download the .obb file from dropbox, Where should I put the *.obb files in. Thank You.

executing commands not permitted

Hi!
I'd love to use GNUroot. However, on a fresh wheezy rootfs i cannot execute commands like ls, it keeps telling me operation not permitted. ls works when I type /bin/ls

. Also the apt-get command can't be found. What am i doing wrong?
Thanks for any help!

Pressing 'Create new rootfs' will silently destroy your old rootfs

To reproduce:

  1. Create a new rootfs using the default option (which for me is wheezy).
  2. Launch. Modify a file. Verify the file remains when you exit and restart the rootfs.
  3. Exit again.
  4. Press the 'Create new rootfs' button.
  5. Watch as all your precious data gets destroyed with a confirmation prompt.

Luckily I didn't actually have any precious data, but it was still very scary. I was expecting a prompt for the name of the new rootfs (so letting me have multiple wheezy root file systems).

Will not launch on android 5.1

I was happily running gnuroot with a wheezy instance on an android 5.0.4 nexus 5. Yesterday the device upgraded to android 5.1 and now I am unable to launch a rootfs. I have removed and re-installed gnuroot and wheezy, also tried gentoo to see if it was a wheezy issue, it is not. I have removed and cleared all cache and then re-installed gnuroot as well, same results.

I can create a new rootfs. At least it seems to do it and then the option to launch that rootfs is there. But if I try to launch it, with or without fake root, the terminal comes up for a second and then I am back at the home screen. There is no usable output on that terminal when it comes up.

Outside of gnuroot Jackpal terminal still runs fine.

I have also tried moving around the system both in an adb shell and in jackpal, but that is of limited usefulness as the device is not rooted.

Is there anything I should try or capture on this non-rooted device that would help debug the problem?

yum fails on Fedora

Here's what I get

> yum update
Error: Cannot retrieve metalink for repository: fedora. Please verify its path and try again

Audio and Such

Starting a Chroot with VNCServer, audio doesn't seem to want to work for me. Is there any feasible way to get it piped through onto the Android end, or am I out of luck?

Small files take up much space

Firstly, thank you for this great software.

I ran across this issue while trying to use offlineimap in GnuRoot Wheezy. The installation went fine, but trying to transfer my existing mail corpus over to a GnuRoot (i) took way too much time to complete, and (ii) resulted in way too much of the (external) sdcard being used up. Investigating a bit, I found that (at least) the latter was due to the huge number of small files (4.0K or less) that offlineimap creates to do its thing.

So the issue is: each small file (of size, say, a few kilobytes) created on GnuRoot Wheezy takes up 128K of space. This is a showstopper for my use case, since my 7GB email archive blows up to a few tens of GB when extracted on GnuRoot, thereby exhausting my external sdcard.

I made the following test case to illustrate this:


Test Case

  1. Create a single file of ~200 KB (Can use /dev/zero if /dev/random is not available or is slow):

    $ dd if=/dev/random of=master.file bs=1 count=200000
    ....
    $ du -h master.file
    256K master.file

  2. Split this file into umpteen pieces, each of size a hundred bytes:

    $ split -b 100 -a 4 master.file

    (This could take some time.. .)

  3. Check the space used up by the collection of split files:

    $ du -chs x*
    128K xaaaa
    128K xaaab
    ....
    ....
    128K xacyx
    250M total

    End Test Case

Is there a workaround? Am I doing things wrong somehow, causing small files to take up much space?

Thank you!

Java can only be started from its real path

The java executable provided by the openjdk-6-jre-headless wheezy package has a strange launch failure: it does not work when started without a path:

root@localhost:~# java
/usr/bin/java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory

but it works if the specifying the "real" path bypassing the symlinks created by the alternatives mechanism:

root@localhost:~# /usr/lib/jvm/java-6-openjdk-armel/jre/bin/java
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
[...]

May be some proot-related readlink() issue?

problems with mutt temporary files

Thank you very much for a great project!

I'm trying to run mutt on debian testing, and run into the following problem:
When trying to read an email, mutt tells me "Could not create temporary file". When trying to write an email, it tells me "Too many levels of symbolic links (errno = 40)"
I take it that the problem has to do with mutt creating temporary lock files to know which emails are opened. I have checked that I have write permission for the directory specified in the "tmpdir" variable. Mutt also manages to create size 0 files with long random names there.
Furthermore, mutt does work under Debian Noroot, so I guess it must be an issue with the precise setup of proot / the parameters passed on to it. Unfortunately, I don't see a way for me to modify what gnuroot actually does upon starting rootfs.

Please let me know if you need me to do any more testing, and again, many thanks!

ArchLinux

Hi,
first I must say I like your work, using wheezyx at the moment. It's working very well on my Samsung S4. But because I use Arch Linux on my computers, I would like Arch on my Samsung also. Is there a way to port Arch on your GnuRoot?
All the best, Boris

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.