reproducible-build

내 NixOS 구성이 향후 동일한 패키지 버전을 빌드하거나 사용하는지 어떻게 확인할 수 있나요?
reproducible-build

내 NixOS 구성이 향후 동일한 패키지 버전을 빌드하거나 사용하는지 어떻게 확인할 수 있나요?

존재하다LHCb 소프트웨어 패키징 및 배포에 Nix 사용, 저자는 다음과 같이 썼습니다. 이러한 사용을 용이하게 하려면 소프트웨어는 장기적으로 지원되는 운영 체제보다 훨씬 오랫동안 안정적이어야 합니다. 또한 소프트웨어는 최종 결과의 정확성을 보장하기 위해 원본 버전에 존재하는 모든 버그를 재현해야 합니다. 패치를 신중하게 도입할 수 있도록 빌드는 반복 가능해야 합니다. 그러나 NixOS 구성 파일에는 (Rust 매니페스트와 달리) 패키지 버전이 포함되어 있지 않습니다.예를 들어 environmen...

Admin

Debian Buster에서 데비안 패키지 "chromium 108" 빌드
reproducible-build

Debian Buster에서 데비안 패키지 "chromium 108" 빌드

저는 chromium 108Debian Buster용으로 빌드하려고 합니다. 이 패키지는 Debian Bullseye에서만 사용할 수 있으므로 Debian Buster 빌드 머신에서 이를 /etc/apt/sources.listBullesyse로 변경하고 소스를 다운로드해야 합니다. apt-get source chromium sources.list그러다 다시 버스터로 돌아왔습니다 . 디렉토리로 이동하여 다음을 시도합니다 dpkg-buildpackage. cd chromium-108.0.5359.94 ...

Admin

수정된 버전을 사용하여 Nix로 Docker 이미지를 빌드하는 버그를 수정하는 방법
reproducible-build

수정된 버전을 사용하여 Nix로 Docker 이미지를 빌드하는 버그를 수정하는 방법

고정된 버전에서 Docker 이미지를 빌드하기 위해 Nix를 사용하려고 합니다. 파일은 다음과 같이 작동합니다. { pkgs ? import <nixpkgs> { } }: pkgs.dockerTools.buildImage { ... 그러나 다음과 같으면 실패합니다. { pkgs ? (import (builtins.fetchTarball { url = "https://github.com/NixOS/nixpkgs/archive/44fc3cb097324c9f9f93313dd3f103e78...

Admin

사용자 정의 커널 빌드를 실행하는 사람들에게 적합하도록 사소한 커널이 업데이트되었습니다.
reproducible-build

사용자 정의 커널 빌드를 실행하는 사람들에게 적합하도록 사소한 커널이 업데이트되었습니다.

상황을 상상해보세요. 당신은 자신만의 커스텀 커널을 실행하고 있습니다 . 새로운 작은 업데이트가 출시되었습니다. 그것이 어제 출시되었고 이미 실행 중이라고 .config가정해 보겠습니다 .5.16.165.16.15 어떻게 결정합니까?~ 해야 하다5.16.16변경 사항이 포함됨실제로설정에 영향을 미치나요? 컴파일하고 다시 시작해야 합니까, 아니면 0으로 변경되어 안전하게 건너뛸 수 있습니까? 나는 이것에 대해 생각하고 있습니다 : 패치 적용 커널 버전을 이미 실행 중인 버전으로 되돌립니다. 커널을 빌...

Admin

새로운 Debian 11에 거의 동일한 커널을 설치할 수 없는 이유는 무엇입니까?
reproducible-build

새로운 Debian 11에 거의 동일한 커널을 설치할 수 없는 이유는 무엇입니까?

나의 전반적인 목표는 수정할 수 있는 RT_PREEMPT 커널을 구축하는 것입니다. 중간 단계로 RT_PREEMPT가 아닌 일반 커널을 빌드하고 설치(그리고 grub 항목으로 실행)해 보았습니다. 하지만 아래 질문은 RT_PREEMPT가 언급되지 않았음에도 타당하다고 생각합니다. 시나리오는 다음과 같습니다. .iso에서 Debian 11 새로 설치 내 생각에 kernel.org에서 동일한 커널 소스 코드에 가장 가까운 것을 다운로드하세요. 세우다, 다음과 같은 이유로 시작이 실패합니다. Loadi...

Admin

최종 사용자로서 특정 패키지가 재현 가능한 방식으로 빌드되었는지 어떻게 확인합니까?
reproducible-build

최종 사용자로서 특정 패키지가 재현 가능한 방식으로 빌드되었는지 어떻게 확인합니까?

mksh재현 가능한 방식으로 패키지를 빌드할 수 있는지 확인하고 싶습니다 . 나는 노력하고있다 apt build-dep mksh apt source mksh cd mksh; dpkg-buildpackage -uc -us cd ..; sha256sum <freshly build dep> 내가 지금 이걸 하면 apt download mksh 다운로드한 deb의 체크섬을 로컬에서 만든 데비안 패키지와 비교하면 체크섬이 다릅니다(deb에 서명하지 않았을 것으로 예상) 이러한 체크섬을 일치시키려...

Admin

데비안 시스템에 설치된 복사할 수 없는 패키지를 나열하는 방법은 무엇입니까?
reproducible-build

데비안 시스템에 설치된 복사할 수 없는 패키지를 나열하는 방법은 무엇입니까?

반복 가능한 빌드가 중요한 이유는 아래에 설명되어 있습니다.reproduciblebuild.org: 무료 오픈소스 소프트웨어의 소스코드에서 악성 결함은 누구나 확인할 수 있지만, 대부분의 소프트웨어는 사전 컴파일된 상태로 배포되기 때문에 해당 여부를 확인할 방법이 없습니다. 이로 인해 소프트웨어를 게시하는 개발자에 대한 공격이 전통적인 공격뿐만 아니라 정치적 영향력, 협박, 심지어 폭력 위협의 형태로도 촉발되었습니다. ~에 따르면isdebianreproducibleyet.com데비...

Admin

mkisofs/genisoimage를 사용하여 복사 가능한 iso 파일을 만드는 방법은 무엇입니까?
reproducible-build

mkisofs/genisoimage를 사용하여 복사 가능한 iso 파일을 만드는 방법은 무엇입니까?

자동화 프로세스 중에 .iso 파일을 사용하여 ISO 파일이 생성됩니다 mkisofs. 심지어 원본 데이터가 완전히 동일하기 때문에 결과 iso 파일도 다릅니다( md5sum변경 사항). 내 결과 때문에 rsync --checksum매번 "동일한 ISO"를 재전송하는 것을 좋아하지 않습니다. 타임 스탬프가 주요 차이점이 될 것으로 예상했습니다. 동일한 방식으로 iso를 생성할 수 있는 내장 스위치가 있습니까 libfaketime?mkisofs 타임스탬프만 중요한지 궁금합니다. 생성된 iso 파일을...

Admin

복사 가능한 바이너리 CPIO(initramfs) 아카이브를 만드는 실용적인 방법이 있습니까?
reproducible-build

복사 가능한 바이너리 CPIO(initramfs) 아카이브를 만드는 실용적인 방법이 있습니까?

파일의 내용이 동일한 경우(동일한 권한을 가진 루트가 소유한 경우) initramfs가 언제 어디서 빌드하든 동일한 해시를 갖기를 원합니다. GNU cpio에는 아카이브에 있는 파일의 타임스탬프를 삭제하거나 설정하는 옵션이 표시되지 않습니다. 재현 가능한 제품을 얻을 수 있도록 cpio 및 기타 보관 프로그램에 대한 입력을 처리하는 비교적 표준적인 방법이 있습니까? 그 외에도 전통적인 "날짜가 주어지지 않았습니다" 타임스탬프가 있습니까? 대부분의 소프트웨어가 눈치채지 못하는 것은 무엇입니까? 예를 ...

Admin

bzip2 결정론적(재현 가능)을 사용하여 파일이 압축됩니까?
reproducible-build

bzip2 결정론적(재현 가능)을 사용하여 파일이 압축됩니까?

bzip2100% 재현이 필요한 파일에 압축을 사용할 때 잠재적인 문제가 있는지 확인하려고 합니다 . 구체적으로 말하면: 메타데이터(이름/인덱스 노드, lastmod 날짜 등) 또는 다른 것이 동일한 파일 내용을 초래합니까?다른 체크섬 생성생성된 아카이브에서 .bz2? 예를 들어,gzip은 기본적으로 결정적이지 않습니다사용하지 않는 한 -n. 지금까지의 대략적인 테스트에 따르면 bzip2는 동일한 입력 데이터(메타데이터, 플랫폼, 파일 시스템 등에 관계없이)가 주어지면 동일한 파일을 일관되게 생성...

Admin

똑같은 ext2 파일 시스템을 만드세요
reproducible-build

똑같은 ext2 파일 시스템을 만드세요

Linux 시스템용 이미지 파일을 준비 중입니다. 이미지를 생성하고 출력이 매번 동일하게 비트 단위로 표시되도록 하는 스크립트를 실행할 수 있어야 합니다. 저는 큰 바이너리 파일을 만들고, 파티션을 나누고, 해당 파티션을 사용하여 루프 장치를 만든 다음, I 파일 시스템을 만드는 일반적인 과정을 거칩니다. 그런 다음 mount파일 시스템을시스템리눅스그리고초기화 프로그램물건을 포장하고, 파티션을 마운트 해제하고, 루프 장치를 삭제하고 이미지 파일을 갖게 되었습니다. 이를 디스크에 복사 하면 ddLin...

Admin

makefile에 인코딩된 종속성을 다이어그램으로 시각화
reproducible-build

makefile에 인코딩된 종속성을 다이어그램으로 시각화

밀접하게 관련makefile에 제공된 종속성을 트리로 표시하는 방법은 무엇입니까?그러나 거기에 제공된 답변은 만족스럽지 않습니다(즉, 작동하지 않음). 표준 Makefile에 인코딩된 DAG(방향성 비순환 그래프)를 시각화할 수 있는 도구가 있습니까? 예를 들어, Unix 파이프라인을 통한 사후 처리를 위한 셸 스크립트도 허용 가능한 솔루션이 될 수 있습니다(아마도 MakeFiles를 graphviz 또는 LaTeX로 변환하는 pandoc 필터 사용). 이 그래픽 시각화를 직접 조판하는 도구가 반드시...

Admin

파일 메타데이터가 없는 표준 아카이브 형식이 있습니까?
reproducible-build

파일 메타데이터가 없는 표준 아카이브 형식이 있습니까?

어떤 맥락에서 저는 루트가 아닌 사용자로 패키지 빌드를 지원하는 패키지 관리자와 유사한 유틸리티를 개발 중입니다. 아카이브를 사용 tar하고 메타데이터를 무시하는 대신 루트로 빌드된 패키지가 루트가 아닌 패키지와 완전히 구별되지 않도록 하고 싶습니다 . tar아카이브 내의 파일과 디렉터리에 권한 비트, 타임스탬프, 소유권 관련 정보와 같은 메타데이터가 포함되지 않는(이상적으로는 포함할 수 없는) 형식/유틸리티가 있습니까 ? 나는 아카이브가 그 안에 있는 디렉토리와 파일, 그리고 파일 내용으로 완전히...

Admin

Dockerfile, Docker 이미지 및 재현 가능한 환경
reproducible-build

Dockerfile, Docker 이미지 및 재현 가능한 환경

Docker 언급 버전 제어 및 공유에 대한 일반적인 문서 및 의견도커파일, 누구나 동일한 이미지를 만들 수 있도록 해야 합니다. 좋은 것 같지만 일반적으로 이와 같은 명령이 있습니다. RUN apt-get update pip install.. 이로 인해 런타임에 따라 다른 항목/버전/패치가 설치될 수 있으며 디버깅이 어려워질 수 있습니다. 반면에 도커 이미지를 공유한다고 해서 버전 제어나 두 이미지의 차이점을 정확히 확인하는 등의 이점은 없습니다. 개발 및 배포 시 어떤 것(dockerf...

Admin

두 개의 동일한 폴더를 압축하면 다른 결과가 발생합니다.
reproducible-build

두 개의 동일한 폴더를 압축하면 다른 결과가 발생합니다.

다음과 같이 구조와 내용이 동일한 두 개의 동일한 폴더가 있습니다. folder_1 hello.txt subfolder byebye.txt folder_2 hello.txt subfolder byebye.txt tar.xz 형식으로 압축하면 파일 크기가 서로 다른 두 개의 서로 다른 아카이브가 생성됩니다(몇 바이트에 불과하지만 동일하지 않음). $ cd folder_1 && tar -Jcf archive.tar.xz * $ cd folder_2 &a...

Admin