[Dev] Install image fails
by Dwarf Snowcrash
I'm not sure this is the place to post but I don't have any other options.
I followed the instructions for the install pen drive creation and got it to run but was given no choice for a drive to install on. It chose the hard drive without telling me, wiped the drive and failed to install anything leaving me with a boat anchor. I had to install Windows 10, as there was no recovery partition left from the original 8.1 install.
The live image fails to boot.
So far I can't say I'm very impressed.
Any suggestions appreciated.
Dale
Sent from my Xperia™ tablet
6 years, 2 months
Re: [Dev] Failed to build docker from source on ubuntu
by Pradeep Kiruvale
Thanks a lot!
Will wait for the diff!
-Pradeep
On 29 January 2016 at 15:12, Antonio Murdaca <antoniomurdaca(a)gmail.com>
wrote:
> This is a known issue with docker 1.9 at the moment. In redhat I built our
> docker 1.9 just yesterday and I faced this issue. The solution was to edit
> the Dockerfile and update the version of go-md2man and its dependencies. As
> soon as I'm on my laptop I'll post a diff which when applied solves this
> issue.
> On Jan 29, 2016 3:09 PM, "Pradeep Kiruvale" <pradeepkiruvale(a)gmail.com>
> wrote:
>
>> Hi All,
>>
>> I got the source code from git and trying to build on ubuntu. But I am
>> facing below issue.
>>
>> Please let me know how to resolve the issue.
>>
>> Regards,
>> Pradeep
>>
>> If you want to create a new branch to retain commits you create, you may
>> do so (now or later) by using -b with the checkout command again. Example:
>>
>> git checkout -b new_branch_name
>>
>> + go get -v -d github.com/cpuguy83/go-md2man
>> package code.google.com/p/go.net/html: unable to detect version control
>> system for code.google.com/ path
>> INFO[0005] The command [/bin/sh -c set -x && export GOPATH="$(mktemp
>> -d)" && git clone -b v1.0.3 https://github.com/cpuguy83/go-md2man.git
>> "$GOPATH/src/github.com/cpuguy83/go-md2man" && git clone -b v1.2
>> https://github.com/russross/blackfriday.git "$GOPATH/src/
>> github.com/russross/blackfriday" && go get -v -d
>> github.com/cpuguy83/go-md2man && go build -v -o
>> /usr/local/bin/go-md2man github.com/cpuguy83/go-md2man && rm -rf
>> "$GOPATH"] returned a non-zero code: 1
>> make: *** [build] Error 1
>>
>> _______________________________________________
>> Dev mailing list
>> Dev(a)lists.clearlinux.org
>> https://lists.clearlinux.org/mailman/listinfo/dev
>>
>>
6 years, 4 months
[Dev] Setting number of cpus
by Pradeep Kiruvale
Hi All,
I am trying to set number of cpus by passing --cpu-shares 1024. I.e to set
one cpu for the container. But its not passing the same value to the lkvm
tool. The lkvm tool still shows as 6. Can you please help me how to pass
number of cpus to a container/lkvm vm?
My docker start script
sudo docker run -ti -m 128M --memory-swap 300M --cpu-shares 1024
busybox:latest
4769 root lkvm run -c 6 -m 128 --nam 0 83000 83036 84672
tried even with
sudo docker run -it --rm busybox:latest --cpuset-cpus=1
same result.
Please let me know what I am missing.
Thanks & Regards,
Pradeep
6 years, 4 months
[Dev] how to find what package is in what bundle
by Long, Paul
Hello-
What is the best way to figure out what packages are included in what
bundles?
Say, for instance, I want to run sar on my baremetal install of Clear Linux
OS for Intel Architecture. I can go to
https://download.clearlinux.org/current/source/SRPMS/ and observe that
sysstat v11.2.0-16 seems to be available in the 5940 release.
Now I can run swupd bundle-add -list on my machine and see all the
available bundles and make a couple of guesses based on what I see there;
maybe it is in sysadmin-[basic|advanced]? Or just sysadmin?
There must be a better way, thanks.
-pwl
6 years, 5 months
Re: [Dev] how to find what package is in what bundle
by Garcia Naranjo, Jaime
Hi,
In short, there is no easy path to find it out using swupd commands, we are working on this feature and hopefully that will be released soon.
For now the best is (if you’re willing to) inspect manifests files that are included into the release by examining the MoM and then each of child sub manifests.
I.e. https://download.clearlinux.org/update/5940/Manifest.MoM
Jaime.
On 1/27/16, 5:43 PM, "Dev on behalf of Long, Paul" <dev-bounces(a)lists.clearlinux.org<mailto:dev-bounces@lists.clearlinux.org> on behalf of paul.long(a)intel.com<mailto:paul.long@intel.com>> wrote:
Hello-
What is the best way to figure out what packages are included in what bundles?
Say, for instance, I want to run sar on my baremetal install of Clear Linux OS for Intel Architecture. I can go to https://download.clearlinux.org/current/source/SRPMS/ and observe that sysstat v11.2.0-16 seems to be available in the 5940 release.
Now I can run swupd bundle-add –list on my machine and see all the available bundles and make a couple of guesses based on what I see there; maybe it is in sysadmin-[basic|advanced]? Or just sysadmin?
There must be a better way, thanks.
-pwl
6 years, 5 months
[Dev] Clear Linux natively as a KVM host w/o OpenStack
by fb.dev.clx
Hi all,
I'm intenting to setup an environment, where I would like to run
virtual machines with QEMU-KVM (independently of OpenStack), with Clear
Linux installed natively.
Clear Linux version:
```
# cat /usr/share/clear/version
5920
```
Clear Linux Bundles installed so far:
```
# ls /usr/share/clear/bundles/
containers-basic
kernel-native
kvm-host
os-core
os-core-update
os-utils
os-utils-gui
```
At first, I tried to run a pre-configured VM with Spice which gave the
following message:
"error: unsupported configuration: spice graphics are not supported
with this QEMU"
I then run the same VM configured with VNC. The VM starts...
```
# virsh list
Id Name State
-----------------------------------------------------
10 VM1000-vnc running
...but I can't manage to find a VNC viewer in the installed bundles.
So, what is the Clear Linux way to get a VNC viewer? Are you planning
to support Spice?
Any suggestions appreciated.
Thanks
-- FB
6 years, 5 months
[Dev] notes on swupd-client
by Maciek Borzecki
Hi,
I noticed that there's no documentation on how updates are applied by
swupd. I finally got some time to satisfy my curiosity and spent a
couple of hours looking at the source code of swupd-client while making
some notes in the process (included further down this email). Hopefully
someone from the team can comment on their accuracy.
I get the feeling that the update process has been thought through. I
really like the idea that the manifest contains actual HMAC of files
instead of just checksums. I'm slightly concerned about the download
process. If a pack is not available then downloading files one by one
may not be the most efficient, even if HTTP pipelining is enabled. I
guess the preference is just to use packs whenever possible (and the
packs are signed, so that's good :) ).
There are also some obvious concerns (perhaps unjustified) about the
size of staged updates. In case the state directory is on a different
filesystem, the actual size taken by the files is 2 * the update size
(due to extra duplicate made by `tar-tar` dance).
I didn't notice any special handling of updates to swupd, but I also
don't think any special attention is needed here.
I've also pushed the notes to github in case anyone is interested
https://github.com/bboozzoo/notes/blob/master/clearlinux/swupd.org
Table of Contents
─────────────────
1 swupd
.. 1.1 swupd-client
..... 1.1.1 bundles
..... 1.1.2 current version
..... 1.1.3 update/bundle installation and download
1 swupd
═══════
1.1 swupd-client
────────────────
• license: GPLv2 & BSD (bsdiff)
• version 2.88
• no public git repo?
1.1.1 bundles
╌╌╌╌╌╌╌╌╌╌╌╌╌
List of installed bundles: `/usr/share/clear/bundles' (just empty
files)
1.1.2 current version
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
Version number in `/usr/share/clear/version'
1.1.3 update/bundle installation and download
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
◊ 1.1.3.1 hash
• every file/manifest/change is identified by HMAC-SHA256
• key computation depends on type of operation/file:
• deleted file: all zeros
• key computed as HMAC-256:
• key is update stat (`struct update_stat'),
• data is xattrs (if enabled) or just empty data
• if xattrs is disabled `key = H(update_stat ++ H(update_stat))'
• same key computation methods for all file types
• for symlink data is the target path
• for regular file, the file contents
• directory, the path
◊ 1.1.3.2 manifests
• kept in a directory per version `/var/lib/swupd/<version>',
ex. `/var/lib/swupd/5920'
• manifest is complete medatadata?
• special one - `Manifest.MoM' (Manifest-of-Manifests?), list of
bundles, hash == hash of bundle manifest?
• `Manifest.<bundle-name>', ex. for `iot' bundle the manifest is named
`Manifest.iot'
• manifest format (based on `Manifest.iot'):
┌────
│ MANIFEST 3
│ version: 5920
│ previous: 5910
│ filecount: 17772
│ timestamp: 1453350282
│ contentsize: 5211764
│
│ .d.. 0000000000000000000000000000000000000000000000000000000000000000 2960 /usr/share/man/man1/m4.1
│ .d.. 0000000000000000000000000000000000000000000000000000000000000000 2960 /usr/share/info/m4.info-2
│ .d.. 0000000000000000000000000000000000000000000000000000000000000000 2960 /usr/share/info/m4.info-1
│ .d.. 0000000000000000000000000000000000000000000000000000000000000000 2960 /usr/share/info/m4.info
│ .d.. 0000000000000000000000000000000000000000000000000000000000000000 2960 /usr/bin/m4
│ .d.. 0000000000000000000000000000000000000000000000000000000000000000 3020 /usr/share/soletta/flow/descriptions/fs.json
│ .d.. 0000000000000000000000000000000000000000000000000000000000000000 3020 /usr/lib64/soletta/modules/flow/fs.so
│ F... 507c5471a1b89f122604ee6541e7b592ff9730ea7a9db2cd5f0d65341484f260 4360 /usr/share/soletta/flow/descriptions/wallclock.json
│ F... edf4aa0a0d9708598413bf08c075b77353b6b7c760815eb2a33c68e1f36fca31 4360 /usr/share/soletta/flow/descriptions/unix-socket.json
│ F... 20e69ad650447c040b947aa31b82819e82bc15c3b7abf18c6c6674d44cb3bd94 4360 /usr/share/soletta/flow/descriptions/udev.json
│ F... 6fa83af89769535bbb13470b8c8cfb5dd579878bdf46fb03573117af14e5f766 4360 /usr/share/soletta/flow/descriptions/trigonometry.json
│ F... 149c8583b0a7cfe734131fb1b0d58501b78418fce384990b306d703d1c5268b7 4360 /usr/share/soletta/flow/descriptions/timer.json
│ F... 21128a72f9b4dd2a01ea8026069d91a5c50b617e32ef9cc4c5b1b34fe531f0da 4360 /usr/share/soletta/flow/descriptions/thingspeak.json
│ F... 1433082e1ece95fedd67c393e46fd6dc9dab14680e43b95111d49a9b141a47ee 4360 /usr/share/soletta/flow/descriptions/temperature.json
│ F... 182b43f2c935fa4aa3f5d42c36d6d1ecc30e082c52109c23fb209d4406a52af5 4360 /usr/share/soletta/flow/descriptions/servo-motor.json
│ F... 25b37fba85f98b064127799ea4fd5b9707ec6957c73ef87568779f6cada9acbf 4360 /usr/share/soletta/flow/descriptions/random.json
│ <snip ........>
│ F... 89786fa8bad354675fae3c5976b32518656352848991f6458b7a42c45b574eb3 4360 /usr/lib64/libicuuc.so.55.1
│ L... 16fb04308b3545dc93004c25b088a48f5299b2ef8602c6abe62f40161aceede5 4360 /usr/lib64/libicuuc.so.55
│ <snip ........>
│ D... 54eff3f4e0339ce30eb644c69cae4d9a03a8cf21d59d1960df39763464f6f467 4790 /usr/share/man/mann
│ F... ff97d611c04d27942737068bd09c3a5d132ee717994ec0b09bbf105210ebc2a3 4790 /usr/share/man/man7/graphviz.7
│ D... 25f2534e9afe39c514c9cb593c3f8ad8d13bd6b45574c633ad25014e1bacd602 4790 /usr/share/man/man7
│ F... d152a295b573a755403bdb6e988cbc885765589b453cead165c20379e800b061 4790 /usr/share/man/man3/xdot.3
└────
• each entry is mapped to `struct file', see `include/swupd.h'
• field breakdown:
┌────
│ F... d152a295b573a755403bdb6e988cbc885765589b453cead165c20379e800b061 4790 /usr/share/man/man3/xdot.3
│ <op> <hash> <lastc> <path>
└────
1) `<op>'
• <xxxx> entry in manifest sets up file type, roughtly mapped to
operation to be executed
• types:
━━━━━━━━━━━━━━━━━━━━━━━━━━
0 1 2 3 type
──────────────────────────
D . . . directory
L . . . symlink
F . . . regular file
M . . . manifest
. d . . deleted
. . C . config
. . s . state?
. . b . boot
. . . r
━━━━━━━━━━━━━━━━━━━━━━━━━━
2) `<hash>' 1.1.3.1
3) `<lastc>'
• version when last change occurred
• used when building a list of files for update, see
`manifest.c:create_update_list', update list will contain files
with higher `<lastc>' or with different hash
◊ 1.1.3.3 download
• file by file download (see `download.c:file_download()')
• no file names are in use, file hash only
• from: `https://download.clearlinux.org/update/5920/files/*.tar'
• to: `/var/lib/swupd/download/.*.tar'
• file donwload in parallell, curl_multi
• parallel downloads (between 15-25 downloads)
• downloads tracked in `swupd_curl_hashmap' (hash map w/ collisions
list), first byte of hash is used as an index
◊ 1.1.3.4 staging
• deals with complete files
• verify that a tar contains only one file with a hash
• tar'ed files are untar'ed into `/var/lib/swupd/staged'
• see `staging.c:do_staging()'
• files staged into filesystem have `.update.' prefix, ex:
`/bin/.update.ls'
◊ 1.1.3.5 update
• high level flow:
1) check last version
2) download manifests
3) consolidate manifests
4) run pre upgrade scripts
• seems to run only one script if `/usr/bin/clr_pre_update.sh'?
• TODO no policy for names for pre-update scripts in bundles?
5) build list of files for update
6) download packs
• updates can come as a pack of updated files
• a tar'ed set of files (`staged/*' and `delta/*')
• untar to `/var/lib/swupd'
7) apply updates one by one
1) deltas, if applied, are applied via bsdiff
• the base version of file must exist in rootfs
• rebuilt files go to staging
2) download remaining files one by one (HTTP pipelining is
enabled)
3) perform staging of all files into rootfs, see 1.1.3.4
4) rename files to their target names
5) sync()
8) post-update scripts
• only triggers `update-triggers.target'
• should bundles link their scripts to
`update-triggers.target.wants'?
• target is currently defined as:
┌────
│ [Unit]
│ Description=Post system update triggers
│ Wants=ldconfig-trigger.service
│ Wants=mandb-trigger.service
│ Wants=python-trigger.service
│ Wants=catalog-trigger.service
│ Wants=tmpfiles-trigger.service
│ Wants=locale-archive-trigger.service
│ Wants=systemd-modules-trigger.service
└────
• ldcofig - update cache
• python - runs `/usr/bin/clr-python-timestamp
/usr/lib/python2.7 /usr/share/httpd/horizon'
• resets timestamps to avoid compilation?
• catalog - update journald's messages catalog
• same file in multiple manifests?
• see `manifest.c:consolidate_submanifests()'
• decision matrix
┌────
│ | File 2:
│ | A' B' C' D'
│ File 1: |------------------------
│ A | - | 2 | 2 | 2 |
│ B | 1 | - | 2 | 2 |
│ C | 1 | 1 | - | X |
│ D | 1 | 1 | X | X |
│
│ State for file1 {A,B,C,D}
│ for file2 {A',B',C',D'}
│ A: is_deleted && !is_rename
│ B: is_deleted && is_rename
│ C: !is_deleted && (file1->hash == file2->hash)
│ D: !is_deleted && (file1->hash != file2->hash)
│
│ Action
│ -: Don't Care - choose/remove either file
│ X: Error State - remove both files, LOG error
│ 1: choose file1 - remove file2
│ 2: choose file2 - remove file1
└────
--
Maciek Borzecki
6 years, 5 months
[Dev] Clearcontainers on Centos
by Pradeep Kiruvale
Hi All,
I am new to clear containers. I am trying it on centos7 on kernel 4.1.15.
I am facing some issue in running docker on the centos7.
Please let me know how can I fix this issue.
Find the logs below
Please let me know how can I compile the clear linux from source code,
where to get the source code from. I saw only patches. Please help me.
Thanks & Regards,
Pradeep
Jan 15 04:36:49 localhost.localdomain systemd[1]: Starting Docker
Application Container Engine...
Jan 15 04:36:49 localhost.localdomain docker[5874]:
time="2016-01-15T04:36:49.546231872-05:00" level=info msg="API listen on
/var/run/docker.sock"
Jan 15 04:36:49 localhost.localdomain docker[5874]:
time="2016-01-15T04:36:49.552818391-05:00" level=error msg="There are no
more loopback devices available."
Jan 15 04:36:49 localhost.localdomain docker[5874]:
time="2016-01-15T04:36:49.552891991-05:00" level=fatal msg="Error starting
daemon: error initializing graphdriver: loopback mounting failed"
Jan 15 04:36:49 localhost.localdomain systemd[1]: docker.service: main
process exited, code=exited, status=1/FAILURE
Jan 15 04:36:49 localhost.localdomain systemd[1]: Failed to start Docker
Application Container Engine.
Jan 15 04:36:49 localhost.localdomain systemd[1]: Unit docker.service
entered failed state.
Jan 15 04:36:49 localhost.localdomain systemd[1]: docker.service failed.
6 years, 5 months
[Dev] Problem testing clear linux
by Juan José Ivars
Hello i am having problems trying clear linux, i have burned the
installer image using dd like it is indicated in that link:
https://clearlinux.org/documentation/gs_creating_bootable_usb.html
$ xzcat -v clear-[release_number]-installer.img.xz | dd of=/dev/sdb bs=4M
After that i have two partitions, the first with some kind of
bootloader and the otrher with a basic rootfs, i reboot the pc and
configure the BIOS to boot from the external drive but without
success.
My systema is a Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz
Do i need a system with UEFI to be able to boot correctly? What am i
doing wrong?
Best regards.
6 years, 5 months