Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
package Git LFS, and also add linux support #45
Conversation
shiftkey
changed the title from
[WIP] package Git LFS, cut a new release
to
[WIP] package Git LFS, and also add linux support
Nov 1, 2016
shiftkey
closed this
Nov 1, 2016
shiftkey
reopened this
Nov 1, 2016
shiftkey
added some commits
Nov 1, 2016
shiftkey
changed the title from
[WIP] package Git LFS, and also add linux support
to
package Git LFS, and also add linux support
Nov 1, 2016
|
Given all the pain I had with finding a reliable |
joshaber
self-assigned this
Nov 2, 2016
| - osx | ||
| - | ||
| + |
| branches: | ||
| only: | ||
| - master | ||
| language: node_js | ||
| node_js: | ||
| - - "node" | ||
| + - "6" |
| - }) | ||
| +function extract (source, callback) { | ||
| + if (path.extname(source) === '.zip') { | ||
| + // console.log('extracting zip file') |
| + }) | ||
| + | ||
| + } else { | ||
| + // console.log('extracting tgz file') |
| + } | ||
| +} | ||
| + | ||
| +export class FileOperations { |
joshaber
Nov 2, 2016
Owner
It seems like this file could do with a little breaking up. Maybe Config/FileOperations/LFS/Downloader or something?
| + // strip any leading directory information | ||
| + strip: 1, | ||
| + // only extract a given set of file extensions | ||
| + filter: (file: { path: string} ) => path.extname(file.path) === extension |
| + if (platform === 'win32') { | ||
| + const nestedPath = path.join(destination, 'mingw64', 'libexec', 'git-core') | ||
| + return Archiver.extractAndFlatten(source, nestedPath, '.exe') | ||
| + } else if (platform === 'darwin') { |
| + return new Promise((resolve, reject) => { | ||
| + checksum.file(file, { algorithm: 'sha256' }, (err: Error, hash: string) => { | ||
| + | ||
| + if (err) { |
| +} | ||
| + | ||
| +export class Downloader { | ||
| + private static getReleaseAssets = (owner: string, repo: string, tag: string): Promise<ReadonlyArray<Asset>>=> { |
joshaber
Nov 2, 2016
Owner
Is there a reason these functions are defined as class properties, instead of being class functions?
shiftkey
Nov 2, 2016
Owner
But seriously, no real reason here. I've heard functions are pretty great, though...
| +} | ||
| + | ||
| +if (process.argv.length < 2) { | ||
| + console.log('node ./package.js [win32|darwin]') |
shiftkey
added some commits
Nov 2, 2016
|
|
joshaber
merged commit b346b15
into
master
Nov 3, 2016
joshaber
deleted the
package-with-git-lfs
branch
Nov 3, 2016
kuychaco
commented
Nov 9, 2016
|
oops, almost forgot to celebrate with this: Thanks @shiftkey! You'll make many Atom users on Linux very happy :) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment


shiftkey commentedOct 25, 2016
•
Edited 1 time
-
shiftkey
Oct 25, 2016
Fixes #12
Fixes #47
This introduces some Typescript to slipstream Git LFS into the vanilla Git packages. I've also added a Ubuntu build to start testing things.
download-git.jsto support Ubuntu CI (use vanilla package for now)