Code Monkey home page Code Monkey logo

ubuntu-asahi's Introduction

Ubuntu Apple Silicon Image

This repository contains scripts to compile native Ubuntu images for Apple silicon hardware such as the Apple M1 and M2.

Hosted Installer

To install a prebuilt image run:

curl -sL https://ubuntuasahi.org/install > install.sh	# Download
less install.sh						# Review
sh install.sh						# Run

or if you like to live dangerously:

curl -sL https://ubuntuasahi.org/install | bash

The installer offers a choice of different Ubuntu releases and build configurations.

Currently supported are:

  • Ubuntu Desktop 23.10

The default username and password are both ubuntu. Root access can be achieved via sudo.

FAQ

Can I dual-boot macOS and Linux?

Yes! The installer can automatically resize your macos partition according to your liking and install Ubuntu in the freed up space. Removing macos is not even supported at the moment since it is required to update the system firmware.

Does Ubuntu Asahi support the same features/hardware as Fedora Asahi?

We try to quickly adapt features added by the reference Asahi distribution. Since we always wait for an official release first, it might take us a few weeks longer to roll out support for new hardware but we generally aim for feature parity.

What do I need to do to enable graphics acceleration/sound/webcam?

No additional steps are necessary, it should all work out of the box. In the past there was an "linux-asahi-edge" kernel providing additional features, nowadays everything is included by default.

How can I boot macos or change the default boot entry?

Hold the power button on boot until you see "Loading starup options". You can now choose which system you want to boot. You can change the default boot entry by holding the Option key and selecting "Always Use".

How can I remove Ubuntu Asahi?

There is no automated uninstaller, but you can uninstall Ubuntu Asahi by booting into macos, removing all Ubuntu partitions and then resizing the macos APFS container to the full size. A detailed guide is provided in the Asahi Linux Wiki.

Related Projects

ubuntu-asahi's People

Contributors

absolucy avatar thefossguy avatar tobhe 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  avatar  avatar  avatar

ubuntu-asahi's Issues

System does not reboot after 1st boot - Enters grub rescue.

Apparently I'm experiencing the same issue as previously described (This post is a repeat - I had mistakenly added this problem to the closed issue prior). I've attempted approx. 5 installations. Installing the Arch Linux presents no issues. I've attached the following: lsblk, grub.cfg as grub.txt and first-boot.log. These files were generated before the reboot in anticipate of the problem. I've also included a pict of the boot screen at the failure state. It appears that the partition UUID in the failure screen is different from that of the grub file. This unit is a 2020 MacBook Air M1/8GB/256GB system. The attempts to install were all made July 17 and today July 18, 2023. Thank you.

lsblk.txt
grub.txt
first-boot.log
IMG_0102

dropbear-initramfs doesn't run in 22.04 server

The title says it all, pretty much.
The package installs. update-initramfs then complains that I have no authorized_keys file for Dropbear, meaning that at least some of its initramfs hooks work.
I add my keys there, run update-initramfs -u -k all and update-grub just for good measure.
I reboot, but Dropbear doesn't seem to start...
I've added an encrypted disk with the initramfs option, hoping to be able to unlock it via Dropbear.
Ubuntu leases an IP address via DHCP and responds to pings while waiting for the disk to be decrypted.

I've used the same setup on many other (non-Asahi) Ubuntu 22.04 and 20.04 machines, and it works fine on them.

Add Ubuntu Flavors

With more of the build process moving to launchpad #23 building Ubuntu flavor installs seems relatively easy. The main problem I see is that more disk images means more testing but I think it would be cool to have a kubuntu or cinnamon variant available out of the box.

install app

how to inatall the ubuntu app ? i try install nekoray and fail .
What features must the app have to be installed?

GPU driver not loading

On latest 22.10 (just installed yesterday March 29), and installed linux-asahi-edge.

However there's no driver loading when checking lshw. Or maybe I'm checking it the wrong way?

image

Error: -69716: Storage system verify or repair failed

Started APFS operation
Aligning shrink delta to 46,591,836,160 bytes and targeting a new container size of 198,515,359,744 bytes
Determined the minimum size for the APFS Container to be 164,651,597,824 bytes
Resizing APFS Container designated by APFS Container Reference disk3
The specific APFS Physical Store being resized is disk0s2
Verifying storage system
Using live mode
Performing fsck_apfs -n -x -l /dev/disk0s2
Checking the container superblock
Checking the EFI jumpstart record
Checking the space manager
Checking the space manager free queue trees
Checking the object map
Checking the encryption key structures
Checking volume /dev/rdisk3s1
Checking the APFS volume superblock
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking snapshot 1 of 1 (com.apple.os.update-BC92420545C003D0A4FCC39C1820D7F53A30223F5B4CC3C4AA749692E7901C1E)
Checking the fsroot tree
Checking the file extent tree
Checking the extent ref tree
Verifying volume object map space
The volume /dev/rdisk3s1 appears to be OK
Checking volume /dev/rdisk3s2
Checking the APFS volume superblock
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the fsroot tree
Checking the extent ref tree
Verifying volume object map space
The volume /dev/rdisk3s2 appears to be OK
Checking volume /dev/rdisk3s3
Checking the APFS volume superblock
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the fsroot tree
Checking the extent ref tree
Verifying volume object map space
The volume /dev/rdisk3s3 appears to be OK
Checking volume /dev/rdisk3s4
Checking the APFS volume superblock
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the fsroot tree
Checking the extent ref tree
Verifying volume object map space
The volume /dev/rdisk3s4 appears to be OK
Checking volume /dev/rdisk3s5
Checking the APFS volume superblock
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the document ID tree
Checking the fsroot tree
error: refcnt (1) of dstream id object (id 4476040) is less than expected (2)
error: doc-id tree: record exists for doc-id 165630, file-id 16417152 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 165672, file-id 16727906 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 173517, file-id 17131537 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 217080, file-id 19791093 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 229996, file-id 19824257 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 245625, file-id 19863314 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 281504, file-id 25786445 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 304233, file-id 27263843 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 304245, file-id 27264133 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 304311, file-id 27271499 but no inode references this doc-id
error: doc-id tree: record exists for doc-id 304320, file-id 27273137 but no inode references this doc-id
Checking the extent ref tree
Checking the file key rolling tree
Verifying volume object map space
The volume /dev/rdisk3s5 was found to be corrupt and needs to be repaired
Checking volume /dev/rdisk3s6
Checking the APFS volume superblock
Checking the object map
Checking the snapshot metadata tree
Checking the snapshot metadata
Checking the fsroot tree
Checking the extent ref tree
Verifying volume object map space
The volume /dev/rdisk3s6 appears to be OK
Verifying allocated space
Performing deferred repairs
error: refcnt of dstream id object (id 4476040) less than expected
error: doc-id tree record exists for doc-id 165630, but no inode references this doc-id
Skipped 11/11 repairs of this type in total
Deferred repairs skipped
The container /dev/disk0s2 could not be verified completely
Storage system check exit code is 8
Error: -69716: Storage system verify or repair failed

Resize failed. This is usually caused by pre-existing APFS filesystem corruption.
Carefully read the diskutil logs above for more information about the cause.
This can usually be solved by doing a First Aid repair from Disk Utility in Recovery Mode.

Ubuntu 20.04 LTS Support

Hello,

Can you please/add compile images for Ubuntu 20.04 LTS? Alternatively, can you add instructions on steps to take, in conjunction with the bash script, to install a custom image?

Thank you.

Only software acceleration available after updating from 22.04 to 22.10

I'm running Ubuntu 22.10 (upgraded from 22.04) on my MacBook Pro M1 Pro. I do not have any graphics acceleration available.
The information panel within system settings reflects this, stating that the OS uses software-acceleration on the X11 windowing system. 22.04 previously also stated that it was using software acceleration using llvmpipe, thought it had been running on Wayland.
I do have display brightness control available though (on Asahi those are connected as both are only available on the edge kernels.)

Installation Clarification Questions

Still a bit new to this process, so I wanted to make sure I'm doing everything correctly. On 2020 M1 Air. Sorry if this isn't the place to put this but I just wanted to be sure of what I was doing.

I saw an issue you closed recently about installing linux-asahi-edge in order to get the new GPU drivers working, so just double checking that I understood the process correctly:

  1. Install ubuntu-asahi through the installer (I just installed lunar)
  2. Run the following:
    $ sudo apt-get install linux-asahi-edge
    $ sudo update-grub

Should I be installing a different version of mesa? I couldn’t find “mesa-asahi-edge”.

I read the following: "The linux-asahi-edge kernel can be installed side-by-side with the standard linux-asahi package, but both versions should be kept in sync, so make sure to always update your packages together!" What should I do to keep both kernels in sync?

Also, I saw that Wayland is preferred for Plasma, but I'm not sure if this matters since I'm not using Plasma. Is it recommended?

Some thoughts and some glitches

Dear all,
I have successfully installed Ubuntu 23.04 on my Macbook pro m1 (2020) and everything works perfect for now. Some thoughts

  1. I had to pass the parameter --no-sandbox for the Visual Studio code and Microsoft teams to work
  2. I had to create a swap file to increase the speed of the machine
  3. I have installed my GoogleDrive files using the overgrive package (Insync does not work for me )
  4. There are some glitches and traces when I move the mouse in Kde (kwin - wayland). Is there something that I should do in order to avoid this?

Regards
Giannis

Grub Rescue prompt is shown and computer doesn't boot into OS.

20230704_215859

Ever since I reinstalled Ubuntu on my computer, it booted only once into Ubuntu (first setup) and every time after that refused to boot. Uboot, (or rather grub) displays a grub rescue prompt looking like the one in the picture. How can I resolve this?

OS: Ubuntu 23.04 Lunar Lobster
Host: MBA (M1, 2020)

Any help is heavily appreciated.

Installation on M1 mac mini stuck at extracting disk.img

I've a M1 mac mini with latest software installed. I'm not able to get the installer working fast, it seems to be stuck and going really slowly when trying to extract disk.img to disk07. The installer.log don't suggest anything, and it isn't trying to download anything. Any pointers on how to debug further?

Move image build process to launchpad

To have as little maintenance overhead and get as close to the default Ubuntu images as possible we really should be using launchpad to build images via the +LiveFS feature instead of rolling our own debootstrap scripts.

GPU drivers

When will the gpu drivers for ubuntu-asahi be released?

Build a working Live Install USB image

Having a working live installer would allow us to utilize all the install time configuration options that gives us such as custom partitioning, root on zfs and full disk encryption.

We would still have to provide a curl | bash install script to run in macOS to set up everything up to u-boot because Apple does not natively support USB booting (and we need access to the firmware shipped in macOS).

MacOS 14.0 large amount of overhead partitioning

The installer is enforcing a surprisingly large amount of space as the minimum for the partition size. Why would it ever need +600GBs of size?

image

Notes:

  • Time Machine is not setup.
  • Mac OS is 14.0 Beta

boot partition feature request

I was checking out your project today and thought it might be a good idea to create a separate boot partition. It's pretty easy -- you just create a boot img file containing the contents of /boot and then modify installer_data.json to list that partition. Anyways....just a thought. Cool project!

    "os_list": [
        {
            "name": "Ubuntu 22.10 Kinetic Desktop",
            "default_os_name": "Ubuntu",
            "boot_object": "m1n1.bin",
            "next_object": "m1n1/boot.bin",
            "package": "ubuntu-desktop-22.10-20230329.zip",
            "supported_fw": ["12.3", "12.3.1", "12.4"],
            "partitions": [
                {
                    "name": "EFI",
                    "type": "EFI",
                    "size": " 524288000B",
                    "format": "fat",
                    "volume_id": "0x2abf9f91",
                    "copy_firmware": true,
                    "copy_installer_data": true,
                    "source": "esp"
                },
                {
                    "name": "Boot",
                    "type": "Linux",
                    "size": "1073741824B",
                    "image": "boot.img"
                },                
                {
                    "name": "Root",
                    "type": "Linux",
                    "size": "12GB",
                    "expand": true,
                    "image": "root.img"
                }
            ]
        }
    ]
}

apt upgrade makes ubuntu 22.04 unbootable

I installed ubuntu 22.04 and everything worked until I tried sudo apt update && sudo apt upgrade, which results in some failure in grub efi configuration. After a restart I could not boot into ubuntu any more. The error looks like this:

Scanning nvme 0:4...
Unable to read file /
Failed to load /
BootOrder not defined
EFI boot manager: cannot load any image
Found EFI removable media binary efi/boot/...
180224 bytes read in 0 ms
Booting /efi\boot\bootaa64.efi
error: no such device: 87c6b...
error: unknown filesystem.
Entering rescue mode...
grub rescue>

MacOS is still working though.

does perf supported

Hi,

Thank you for the great work!

I am trying to figure out the IPC of Apple M1, and I wonder if perf supported?

Specially the inst counts?

4K kernel

Is there any way we could get 4K kernel for asahi ubuntu ?

e2fsck: Get a newer version of e2fsck!

Went through a fresh installation process of Ubuntu 22.10 Desktop, and am getting a "e2fsck: Get a newer version of e2fsck!"

I'm then put into initramfs, which is too small for me to actually get a new e2fsck?

Macbook Air M2, Ventura, 16GB+512GB.

F1BFC931-E778-4B95-BC3B-683DA2C88E91

Failed boot due to disk not present

Hi,

I previously has Asahi linux installed and removed all partitions and container volumes before starting. No issues during the install as per the previous Asahi install. I even tried this at least 3 times and got the same result. Photo below.

macOs 13.2.1
Ubuntu 22.10

image

Thanks!

Add m2 pro/max/edge/15" support

Collecting system information...
Product name: MacBook Pro (14-inch, 2023)
SoC: Apple M2 Pro
Device class: j414sap
Product type: Mac14,9
Board ID: 0x4
Chip ID: 0x6020
System firmware: iBoot-8422.100.650
Boot UUID: 6C075936-64B6-4683-86F4-089D79019B79
Boot VGID: 6C075936-64B6-4683-86F4-089D79019B79
Default boot VGID: 6C075936-64B6-4683-86F4-089D79019B79
Boot mode: macOS
OS version: 13.3.1 (22E261)
SFR version: 22.5.261.0.0,0
System rOS version: 13.3.1 (22E261)
No Fallback rOS
Login user: hauscheck

This device is not supported yet!
Please check out the Asahi Linux Blog for updates on device support:

https://asahilinux.org/blog/

When will I be able to use this on my Mac?
Or is there any other way to install linux to my Mac?

Touchpad cursor move is strange

The cursor move is strange (not linear to the finger) compared with the native macOS.
It seems that the original asahi Arch Linux does also have the cursor move different than that in macOS, but in Ubuntu it is much stranger.

Backlight control

Hello,
I have successfully installed Ubuntu 23.04 on my Macbook pro. One minor issue is that I can not control the backlight keyboard. I have installed the light program

Giannis

VSCode / Electron support

Hi,

I'm trying to launch vscode 1.80, I also tried with vscode 1.81.

But it seems something is misconfigured by default when it run in sandbox mode it doesn't work :(

code-insiders --verbose
[30920:0717/132429.582256:FATAL:credentials.cc(127)] Check failed: . : Permission denied (13)
code-insiders --no-sandbox

Works fine but I got an issue when trying to enable the sync features => it redirects to a webpage but never complete the sync feature

When I turn on the logs it gives me this error

rm: cannot remove '/home/ubuntu/snap/chromium/common/chromium/*/GPUCache': No such file or directory
Opening in existing browser session.
libGL error: MESA-LOADER: failed to open apple: /snap/chromium/2543/gnome-platform/usr/lib/aarch64-linux-gnu/dri/apple_dri.so: cannot open shared object file: No such file or directory (search paths /snap/chromium/2543/gnome-platform/usr/lib/aarch64-linux-gnu/dri, suffix _dri)
libGL error: failed to load driver: apple

Unbootable system after kernel upgrade

I've installed (and wiped) from this repo 3 or four times, mostly getting the error from #10

If I select the the older kernel the system loads up but the trackpad and keyboard sometimes don't function, which at least means that #10 doesn't seem to be as much of an issue (for me) anymore.

Thank you for maintaining the product, let me know if you need any information or testing later on. Here is what's displayed on the screen as accurately as I could type it.

[    0.287011] apple-pmgr-pwrstate 28e0000.power-management:power-controller02e8: failed to add parent domain: -22 (power-controller -> power-controller)
[    0.287071] apple-pmgr-pwrstate 28e0000.power-management:power-controller02e8: failed to add parent domain: -22 (power-controller -> power-controller)
[    0.327132] apple-dcp 38bc00000.dcp dcp_poweron() starting
Gave up waiting for root file system device. Common problems:
 - Boot args (car /proc/cmdline)
 - Missing modules (cat /proc/modules; ls /dev)
 - ALERT! UUID=5aaa4a0b-447c-497c-8734-76f31bbfe57b does not exist. Dropping to a shell!```

Unable to install – no OS selection

I cannot install anything as I'm not offered any choice. I typed in Ubuntu 22.10 Desktop and similar but this led to no avail.

For reference: I ran this install script: curl -sL https://tobhe.de/ubuntu/install | bash

OS Selection

Build did not output installer scripts

I have run the build-generic.sh script on a Ubuntu 22.10 x64 machine and it has successfully created ubuntu.disk.img.zip, but there is no installer in the zip archive that I can find. I noticed some umount errors from the script output near the end. Can you help me find the installer?

[info] Synchronizing changes to disk
[info] Installing grub
[info] Generating grub image
[info] Adding user ubuntu
BAD PASSWORD: The password is shorter than 8 characters
[info] Cleaning up data...
umount: /mnt/data/code/ubuntu-asahi/build/rootfs.disk/var/cache/apt/archives: not mounted
+ ../scripts/disk/04-build-disk-image.sh
[info] Creating /mnt/data/code/ubuntu-asahi/build/ubuntu.disk.img
mke2fs 1.46.5 (30-Dec-2021)
Discarding device blocks: done                            
Creating filesystem with 1389568 4k blocks and 347440 inodes
Filesystem UUID: 87c6b0ce-3bb6-4dc2-9298-3a799bbb5994
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done 

[info] Mounting image
[info] Copying to disk
[info] Updating grub config
[info] Packing disk
[info] Compressing
  adding: disk.img (deflated 66%)
  adding: esp/ (stored 0%)
  adding: esp/m1n1/ (stored 0%)
  adding: esp/m1n1/boot.bin (deflated 72%)
  adding: esp/EFI/ (stored 0%)
  adding: esp/EFI/BOOT/ (stored 0%)
  adding: esp/EFI/BOOT/BOOTAA64.EFI (deflated 70%)
umount: /mnt/data/code/ubuntu-asahi/build/mnt: not found
builder@cat:/mnt/data/code/ubuntu-asahi $ ```

Document uninstall process in README/website

We currently don't have any documentation on how to remove Ubuntu-Asahi or how to repair a failed installation. There should be a detailed easy to follow guide on how to do that, probably including links to the relevant upstream Asahi docs.

Problems when setting as default boot volume during installation (M1 Pro)

The last step of the installation (When the new system is installed as the one to be loaded) lasts indefinitely.

Setting the new OS as the default boot volume...

Tried to restart, the result is the same, decided to abort this step and try to perform further steps as it should be.
In "recovery mode" I get an error immediately when I open the terminal

Asahi Linux installer (second step)
VGID: F2CF832D-76AD-4382-9500-F434770DA54
System volume: /Volumes/ubuntu_os
Can't get local policy for Volume GrOUp VULD F20/8320-7610-4382-9688-F43467700N
4
Failed to obtain values from the current local policy logout
[Process completed]

Compile and Install a Linux Kernel

Hi,

After installing an Ubuntu OS on Mac Mini M1, is it possible to compile a Linux kernel from the source code (kernel.org) and install it? So, next time when booting up into the Ubuntu system, the kernel will be the self-built kernel. If so, what is the recommended configuration of it?

Thanks.

Document Build Process

With more of our image build process moving to launchpad we should really try to document how all of this works. We have mostly reverse engineered the process by looking at public build logs for similar projects like https://launchpad.net/~ubuntu-concept so this is a good opportunity to give back to the Ubuntu community.

When waken from sleep, GDM goes into 100% scaling, and after login, the keyboard, trackpad, and mouse stop working.

This mostly occurs when on battery power, but sometimes also occurs when the computer is plugged in. When I wake the computer from sleep, GDM is scaled to 100% and after I login, the keyboard trackpad, and mouse completely stop working. I then will have to perform a force reboot to fix the issue. But no matter what, I experience this issue at least once a day. Any suggestions?

Device:

MBA (M1, 2020)
Ubuntu 22.10 Kinetic (With GPU drivers)

dmesg.log

20230128_161543.1.mp4

backport updates to jammy

It looks like a good share of our user base is sticking to 22.04 LTS. It would like to backport our recent driver and mesa updates to jammy to make them available for everyone.

Chromium doesn't seem to work with wayland, can't find asahi driver

While using the 22.10 Desktop on my M1 Pro, I can't seem to manage to get wayland and chromium working (or rather chromium working at all).
Here is what i get with running chromium --ozone-platform=wayland:
log.txt

Sorry for bothering with this but I tried quite a lot of things but couldn't manage to get it working myself.

Steps to reproduce:

  1. sudo snap install chromium
  2. chromium --ozone-platform=wayland

Support encrypted root (&boot?) partition

Hi @tobhe, I just tried this installer and it worked very well. I had initially some trouble with spotty gpu driver on the M2, but the installation of asahi-edge and a reboot fixed this. As the system is working well, I am considering using it for my day-to-day work.

For this, I would like to encrypt my root partition. I wonder if it would be hard to add support for this to your ubuntu-asahi package? I am happy to redo my installation if that could help.

Add package: mesa-asahi

Hi there,
Now that the experimental GPU driver is out, could you add mesa-asahi to the PPA?

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.