2016-06-17 6 views
4

우분투 Trusty에서 xvfb-run -s '-screen 0 1024x768x24' pub run test -p content-shell을 실행하려고합니다.신뢰할 수있는 우분투에서 다트 content_shell 구성

다트 및 콘텐츠 쉘은 다음과 같은 방법으로 설치됩니다 /opt/google/content_shell

# Install Dart 
curl https://dl-ssl.google.com/linux/linux_signing_key.pub | gpg --import --no-default-keyring --keyring /etc/apt/trusted.gpg.d/google.gpg 
curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list 
apt-get update 
apt-get install --assume-yes dart=1.15.0-1 

# Content shell and dartium 
curl https://storage.googleapis.com/dart-archive/channels/stable/release/1.15.0/dartium/dartium-linux-x64-release.zip> /dartium-linux-x64-release.zip && \ 
    unzip /dartium-linux-x64-release.zip -d /opt/google && \ 
    mv /opt/google/dartium-* /opt/google/dartium && \ 
    chmod -R 755 /opt/google/dartium 

curl http://storage.googleapis.com/dart-archive/channels/stable/release/1.15.0/dartium/content_shell-linux-x64-release.zip > /content_shell-linux-x64-release.zip && \ 
    unzip /content_shell-linux-x64-release.zip -d /opt/google && \ 
    mv /opt/google/drt-* /opt/google/content_shell && \ 
    chmod -R 755 /opt/google/content_shell 

은 내 PATH 변수에 포함된다. 내가 그 시험을 시도 실행할 때

# which content_shell 
/opt/google/content_shell/content_shell 

그러나 :

Failed to run Content Shell: Content Shell failed with exit code 1.. 
    dart:async        Future.Future.error 
    package:async/src/result/error.dart 30 ErrorResult.asFuture 
    package:async/src/result.dart 93  Result.release.<fn> 
    ===== asynchronous gap =========================== 
    dart:async        _Future.then 
    package:async/src/result.dart 93  Result.release 

내가 더 이상 정보가 표시되지 않습니다

# xvfb-run -s '-screen 0 1024x768x24' pub run test -p content-shell 

을 나는처럼 보이는 오류가 나타납니다. 이 우려스러운해야하는 경우가 불길한 보이지만 나는 확실하지 않다 :

# content_shell --version 
[1114:1114:0617/150811:9471556647:ERROR:browser_main_loop.cc(189)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on. 
[1116:1116:0100/000000:9471568304:ERROR:zygote_linux.cc(612)] write: Broken pipe 

내 질문

은 어떻게 그것을 pub run test -p content-shell으로 테스트를 실행할 수 있도록 콘텐츠 쉘이 제대로 설치하도록 구성 할 수 있습니까?

+0

유용한 정보 https://github.com/travis-ci/travis-build/blob/master/lib/travis/build/script/dart.rb 일반적으로 글꼴 누락으로 인해 문제가 발생합니다. content_shell을 직접 실행하여 오류가 발생하는지 확인하십시오. –

+0

@ GünterZöchbauer 우분투 정확한 것입니다.하지만 믿을만한 패키지를 찾으려고 할 수도 있습니다. – enderland

+0

다른 우분투 버전의 구체적인 예가 있다고 생각하지 않습니다. 내 데비안 시스템에서 필자는 누락 된 글꼴과 임의의 다른 글꼴에 대한 일련의 심볼릭 링크를 만들었습니다. –

답변

3

제 경우에는 글꼴이 필요했습니다. 당신은 contentshell 어떤 오류를 볼 수 있습니다

내 설치 위치, 로그 파일을 보면이 이것이다 :

cat /opt/google/content_shell/content_shell.log 

내가 자동으로 실패 할 contentshell 발생 글꼴의 무리를 잃어버린 나에게 보여 주었다.

것들은 내가 설치했다 (또는 hack my way around을 패키지 거대 글꼴이 많이 있기 때문에,이는 부두 노동자 컨테이너이기 때문에 나는 팽창을 최소화하기 위해 원) :

apt-get update && apt-get install fonts-tlwg-garuda 

# fix dart content shell 
mkdir /usr/share/fonts/truetype/kochi 
cd /usr/share/fonts/truetype/kochi 
ln -s ../dejavu/DejaVuSans-Bold.ttf kochi-gothic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf kochi-mincho.ttf 

mkdir /usr/share/fonts/truetype/ttf-indic-fonts-core/ 
cd /usr/share/fonts/truetype/ttf-indic-fonts-core/ 
ln -s ../dejavu/DejaVuSans-Bold.ttf lohit_hi.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf lohit_ta.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf MuktiNarrow.ttf 

mkdir /usr/share/fonts/truetype/ttf-punjabi-fonts/ 
cd /usr/share/fonts/truetype/ttf-punjabi-fonts/ 
ln -s ../dejavu/DejaVuSans-Bold.ttf lohit_pa.ttf 
ln -s dejavu/ ttf-dejavu 
cd /usr/share/fonts/truetype 
ln -s dejavu/ ttf-dejavu 

mkdir /usr/share/fonts/truetype/msttcorefonts/ 
cd /usr/share/fonts/truetype/msttcorefonts/ 
ln -s ../dejavu/DejaVuSans-Bold.ttf Arial.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Arial_Bold.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Arial_Bold_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Arial_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Comic_Sans_MS.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Comic_Sans_MS_Bold.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Courier_New.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Courier_New_Bold.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Courier_New_Bold_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Courier_New_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Georgia.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Georgia_Bold.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Georgia_Bold_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Georgia_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Impact.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Trebuchet_MS.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Trebuchet_MS_Bold.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Trebuchet_MS_Bold_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Trebuchet_MS_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Times_New_Roman.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Times_New_Roman_Bold.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Times_New_Roman_Bold_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Times_New_Roman_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Verdana.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Verdana_Bold.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Verdana_Bold_Italic.ttf 
ln -s ../dejavu/DejaVuSans-Bold.ttf Verdana_Italic.ttf 

이들의 대부분은 this source code 출신 확인. 명령을 실행하고 다음 번에 백만 번을 보는 대신 유효성을 검사하는 목록을 찾는 것이 훨씬 쉽습니다.

실제로이 패키지를 설치할 수 있습니다.