libsolv-constantids.3 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906
  1. '\" t
  2. .\" Title: Libsolv-Constantids
  3. .\" Author: [see the "Author" section]
  4. .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
  5. .\" Date: 03/02/2022
  6. .\" Manual: LIBSOLV
  7. .\" Source: libsolv
  8. .\" Language: English
  9. .\"
  10. .TH "LIBSOLV\-CONSTANTIDS" "3" "03/02/2022" "libsolv" "LIBSOLV"
  11. .\" -----------------------------------------------------------------
  12. .\" * Define some portability stuff
  13. .\" -----------------------------------------------------------------
  14. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  15. .\" http://bugs.debian.org/507673
  16. .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
  17. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  18. .ie \n(.g .ds Aq \(aq
  19. .el .ds Aq '
  20. .\" -----------------------------------------------------------------
  21. .\" * set default formatting
  22. .\" -----------------------------------------------------------------
  23. .\" disable hyphenation
  24. .nh
  25. .\" disable justification (adjust text to left margin only)
  26. .ad l
  27. .\" -----------------------------------------------------------------
  28. .\" * MAIN CONTENT STARTS HERE *
  29. .\" -----------------------------------------------------------------
  30. .SH "NAME"
  31. libsolv-constantids \- fixed Ids for often used strings
  32. .SH "DESCRIPTION"
  33. .sp
  34. Constant Ids are Ids of strings that are often needed\&. They are defined to ease programming and reduce the number of pool_str2id calls\&. The constant Ids are part of the binary ABI of libsolv, a minor version update will only add new constants and not change existing Ids to maintain compatibility\&. The on\-disk solv format does not use the fixed Ids, but instead references the strings, so solv files can still be read when the ABI is broken\&.
  35. .SH "SPECIAL STRINGS"
  36. .PP
  37. \fBID_EMPTY ""\fR
  38. .RS 4
  39. The empty string\&. It will always have Id 1\&.
  40. .RE
  41. .PP
  42. \fBSYSTEM_SYSTEM "system:system"\fR
  43. .RS 4
  44. The name of the always installed "system" solvable\&.
  45. .RE
  46. .SH "SOLVABLE ATTRIBUTES"
  47. .sp
  48. These are Ids for keynames of attributes\&. They can be used in the lookup and storage functions to select the correct attribute in the solvable\&. The descriptions below describe the intended semantics of the values stored in the attribute with the keyname\&.
  49. .PP
  50. \fBSOLVABLE_NAME "solvable:name"\fR
  51. .RS 4
  52. The name of the package\&.
  53. .RE
  54. .PP
  55. \fBSOLVABLE_ARCH "solvable:arch"\fR
  56. .RS 4
  57. The architecture of the package\&. See the Solvable Architecture section for predefined architecture Id values\&.
  58. .RE
  59. .PP
  60. \fBSOLVABLE_EVR "solvable:evr"\fR
  61. .RS 4
  62. The version of the package\&. It usually consists of some combination of the Epoch, the Version, and the Release of the solvable\&.
  63. .RE
  64. .PP
  65. \fBSOLVABLE_VENDOR "solvable:vendor"\fR
  66. .RS 4
  67. A vendor string\&. Usually the company or group that created the binary package\&.
  68. .RE
  69. .PP
  70. \fBSOLVABLE_PROVIDES "solvable:provides"\fR
  71. .RS 4
  72. Stores an array of dependency Ids that describe the capabilities that the package provides\&.
  73. .RE
  74. .PP
  75. \fBSOLVABLE_OBSOLETES "solvable:obsoletes"\fR
  76. .RS 4
  77. Stores an array of dependency Ids that describe the packages that this package replaces\&.
  78. .RE
  79. .PP
  80. \fBSOLVABLE_CONFLICTS "solvable:conflicts"\fR
  81. .RS 4
  82. Stores an array of dependency Ids that describe the capabilities that this package conflicts with, i\&.e\&. that can\(cqt be installed together with this package\&.
  83. .RE
  84. .PP
  85. \fBSOLVABLE_REQUIRES "solvable:requires"\fR
  86. .RS 4
  87. Stores an array of dependency Ids that describe the capabilities that also must be installed when this package is installed\&.
  88. .RE
  89. .PP
  90. \fBSOLVABLE_RECOMMENDS "solvable:recommends"\fR
  91. .RS 4
  92. Stores an array of dependency Ids that describe the capabilities that also should be installed when this package is installed\&. It\(cqs not an error if not all capabilities can be met\&.
  93. .RE
  94. .PP
  95. \fBSOLVABLE_SUGGESTS "solvable:suggests"\fR
  96. .RS 4
  97. Stores an array of dependency Ids that describe the capabilities that also useful to have installed when this package is installed\&. This is intended to provide a hint to the user about other packages\&.
  98. .RE
  99. .PP
  100. \fBSOLVABLE_SUPPLEMENTS "solvable:supplements"\fR
  101. .RS 4
  102. Stores an array of dependency Ids that define that this package should be installed if one of the capabilities is met\&. This is like the recommends attribute, but works in the reverse way\&.
  103. .RE
  104. .PP
  105. \fBSOLVABLE_ENHANCES "solvable:enhances"\fR
  106. .RS 4
  107. Stores an array of dependency Ids that define that this package is useful to have installed if one of the capabilities is met\&. This is like the suggests attribute, but works in the reverse way\&.
  108. .RE
  109. .PP
  110. \fBSOLVABLE_SUMMARY "solvable:summary"\fR
  111. .RS 4
  112. The summary should be a short string without any newlines that describes what a package does\&.
  113. .RE
  114. .PP
  115. \fBSOLVABLE_DESCRIPTION "solvable:description"\fR
  116. .RS 4
  117. The description should be a more verbose description about what a package does\&. It may consist of multiple lines\&.
  118. .RE
  119. .PP
  120. \fBSOLVABLE_DISTRIBUTION "solvable:distribution"\fR
  121. .RS 4
  122. The distribution is a short string that describes the OS and OS version this package is built for\&.
  123. .RE
  124. .PP
  125. \fBSOLVABLE_AUTHORS "solvable:authors"\fR
  126. .RS 4
  127. A list of authors of this package\&. This attribute was used in SUSE packages\&.
  128. .RE
  129. .PP
  130. \fBSOLVABLE_PACKAGER "solvable:packager"\fR
  131. .RS 4
  132. The person who created the binary package, see also the vendor attribute\&.
  133. .RE
  134. .PP
  135. \fBSOLVABLE_GROUP "solvable:group"\fR
  136. .RS 4
  137. The package group that this package belongs to\&. See also the keywords attribute\&.
  138. .RE
  139. .PP
  140. \fBSOLVABLE_URL "solvable:url"\fR
  141. .RS 4
  142. An URL that points to more information about the package\&.
  143. .RE
  144. .PP
  145. \fBSOLVABLE_KEYWORDS "solvable:keywords"\fR
  146. .RS 4
  147. list of keyword string IDs used for tagging this package\&.
  148. .RE
  149. .PP
  150. \fBSOLVABLE_LICENSE "solvable:license"\fR
  151. .RS 4
  152. The license(s) of this package\&.
  153. .RE
  154. .PP
  155. \fBSOLVABLE_BUILDTIME "solvable:buildtime"\fR
  156. .RS 4
  157. The seconds since the unix epoch when the binary package was created\&.
  158. .RE
  159. .PP
  160. \fBSOLVABLE_BUILDHOST "solvable:buildhost"\fR
  161. .RS 4
  162. The name of the host on which the binary package was created\&.
  163. .RE
  164. .PP
  165. \fBSOLVABLE_EULA "solvable:eula"\fR
  166. .RS 4
  167. If this attribute is present the user should be asked to accept the end user license agreement before the package gets installed\&.
  168. .RE
  169. .PP
  170. \fBSOLVABLE_CPEID "solvable:cpeid"\fR
  171. .RS 4
  172. A Common Platform Enumeration string describes the platform this package is intended for\&. See also the distribution attribute\&.
  173. .RE
  174. .PP
  175. \fBSOLVABLE_MESSAGEINS "solvable:messageins"\fR
  176. .RS 4
  177. A message that should be displayed to the user when the package gets installed\&.
  178. .RE
  179. .PP
  180. \fBSOLVABLE_MESSAGEDEL "solvable:messagedel"\fR
  181. .RS 4
  182. A message that should be displayed to the user when the package gets erased\&.
  183. .RE
  184. .PP
  185. \fBSOLVABLE_INSTALLSIZE "solvable:installsize"\fR
  186. .RS 4
  187. The disk space in bytes needed when installing the package\&.
  188. .RE
  189. .PP
  190. \fBSOLVABLE_DISKUSAGE "solvable:diskusage"\fR
  191. .RS 4
  192. A SUSE extension that stores for each directory the needed amount of disk space in kilobytes and inodes\&.
  193. .RE
  194. .PP
  195. \fBSOLVABLE_FILELIST "solvable:filelist"\fR
  196. .RS 4
  197. A list of files that the package contains\&.
  198. .RE
  199. .PP
  200. \fBSOLVABLE_INSTALLTIME "solvable:installtime"\fR
  201. .RS 4
  202. The seconds since the unix epoch when the binary package was installed on the system\&.
  203. .RE
  204. .PP
  205. \fBSOLVABLE_MEDIADIR "solvable:mediadir"\fR
  206. .RS 4
  207. The directory on the repository that contains the package\&. If this attribute is set to void, the package architecture is used as directory\&.
  208. .RE
  209. .PP
  210. \fBSOLVABLE_MEDIAFILE "solvable:mediafile"\fR
  211. .RS 4
  212. The filename on the repository that contains the package\&. If this attribute is set to void, the canonical file name of the package is used (i\&.e\&. a combination of the name, version, architecture)\&.
  213. .RE
  214. .PP
  215. \fBSOLVABLE_MEDIANR "solvable:medianr"\fR
  216. .RS 4
  217. The media number\&. This is an integer describing on which of a multi\-part media set this package is on\&.
  218. .RE
  219. .PP
  220. \fBSOLVABLE_MEDIABASE "solvable:mediabase"\fR
  221. .RS 4
  222. This attribute can be used to overwrite the repositories base url\&.
  223. .RE
  224. .PP
  225. \fBSOLVABLE_DOWNLOADSIZE "solvable:downloadsize"\fR
  226. .RS 4
  227. The size of the binary package in bytes\&.
  228. .RE
  229. .PP
  230. \fBSOLVABLE_SOURCEARCH "solvable:sourcearch"\fR
  231. .RS 4
  232. The architecture of the source package that this package belongs to\&.
  233. .RE
  234. .PP
  235. \fBSOLVABLE_SOURCENAME "solvable:sourcename"\fR
  236. .RS 4
  237. The name of the source package that this package belongs to\&. If set to void, the package name attribute is used instead\&.
  238. .RE
  239. .PP
  240. \fBSOLVABLE_SOURCEEVR "solvable:sourceevr"\fR
  241. .RS 4
  242. The version of the source package that this package belongs to\&. If set to void, the package version attribute is used instead\&.
  243. .RE
  244. .PP
  245. \fBSOLVABLE_TRIGGERS "solvable:triggers"\fR
  246. .RS 4
  247. A list of package triggers for this package\&. Used in the transaction ordering code\&.
  248. .RE
  249. .PP
  250. \fBSOLVABLE_CHECKSUM "solvable:checksum"\fR
  251. .RS 4
  252. The checksum of the binary package\&. See the Data Types section for a list of supported algorithms\&.
  253. .RE
  254. .PP
  255. \fBSOLVABLE_PKGID "solvable:pkgid"\fR
  256. .RS 4
  257. A string identifying a package\&. For rpm packages, this is the md5sum over the package header and the payload\&.
  258. .RE
  259. .PP
  260. \fBSOLVABLE_HDRID "solvable:hdrid"\fR
  261. .RS 4
  262. A string identifying a package\&. For rpm packages, this is the sha1sum over just the package header\&.
  263. .RE
  264. .PP
  265. \fBSOLVABLE_LEADSIGID "solvable:leadsigid"\fR
  266. .RS 4
  267. A string identifying the signature part of a package\&. For rpm packages, this is the md5sum from the start of the file up to the package header (i\&.e\&. it includes the lead, the signature header, and the padding)\&.
  268. .RE
  269. .PP
  270. \fBSOLVABLE_HEADEREND "solvable:headerend"\fR
  271. .RS 4
  272. The offset of the payload in rpm binary packages\&. You can use this information to download just the header if you want to display information not included in the repository metadata\&.
  273. .RE
  274. .PP
  275. \fBSOLVABLE_CHANGELOG "solvable:changelog"\fR
  276. .RS 4
  277. The array containing all the changelog structures\&.
  278. .RE
  279. .PP
  280. \fBSOLVABLE_CHANGELOG_AUTHOR "solvable:changelog:author"\fR
  281. .RS 4
  282. The author of a changelog entry\&.
  283. .RE
  284. .PP
  285. \fBSOLVABLE_CHANGELOG_TIME "solvable:changelog:time"\fR
  286. .RS 4
  287. The seconds since the unix epoch when the changelog entry was written\&.
  288. .RE
  289. .PP
  290. \fBSOLVABLE_CHANGELOG_TEXT "solvable:changelog:text"\fR
  291. .RS 4
  292. The text of a changelog entry\&.
  293. .RE
  294. .SH "SPECIAL SOLVABLE ATTRIBUTES"
  295. .PP
  296. \fBRPM_RPMDBID "rpm:dbid"\fR
  297. .RS 4
  298. The rpm database id of this (installed) package\&. Usually a small integer number\&.
  299. .RE
  300. .PP
  301. \fBSOLVABLE_PATCHCATEGORY "solvable:patchcategory"\fR
  302. .RS 4
  303. The category field for patch solvables\&. Should be named \(lqupdate:category\(rq instead\&.
  304. .RE
  305. .PP
  306. \fBUPDATE_REBOOT "update:reboot"\fR
  307. .RS 4
  308. If this attribute is present the system should be rebooted after the update is installed\&.
  309. .RE
  310. .PP
  311. \fBUPDATE_RESTART "update:restart"\fR
  312. .RS 4
  313. If this attribute is present the software manager should be run again after the update is installed\&.
  314. .RE
  315. .PP
  316. \fBUPDATE_RELOGIN "update:relogin"\fR
  317. .RS 4
  318. If this attribute is present the user should log off and on again after the update is installed\&.
  319. .RE
  320. .PP
  321. \fBUPDATE_MESSAGE "update:message"\fR
  322. .RS 4
  323. A message that should be shown to the user to warn him about anything non\-standard\&.
  324. .RE
  325. .PP
  326. \fBUPDATE_SEVERITY "update:severity"\fR
  327. .RS 4
  328. The severity of the update\&.
  329. .RE
  330. .PP
  331. \fBUPDATE_RIGHTS "update:rights"\fR
  332. .RS 4
  333. Any legal or other rights of the update\&.
  334. .RE
  335. .PP
  336. \fBUPDATE_COLLECTION "update:collection"\fR
  337. .RS 4
  338. The array containing the package list of the update\&.
  339. .RE
  340. .PP
  341. \fBUPDATE_COLLECTION_NAME "update:collection:name"\fR
  342. .RS 4
  343. The name of the updated package\&.
  344. .RE
  345. .PP
  346. \fBUPDATE_COLLECTION_EVR "update:collection:evr"\fR
  347. .RS 4
  348. The version of the updated package\&.
  349. .RE
  350. .PP
  351. \fBUPDATE_COLLECTION_ARCH "update:collection:arch"\fR
  352. .RS 4
  353. The architecture of the updated package\&.
  354. .RE
  355. .PP
  356. \fBUPDATE_COLLECTION_FILENAME "update:collection:filename"\fR
  357. .RS 4
  358. The file name of the updated package\&.
  359. .RE
  360. .PP
  361. \fBUPDATE_REFERENCE "update:reference"\fR
  362. .RS 4
  363. The array containing the reference list of the update\&.
  364. .RE
  365. .PP
  366. \fBUPDATE_REFERENCE_TYPE "update:reference:type"\fR
  367. .RS 4
  368. The type of the reference, e\&.g\&. bugzilla\&.
  369. .RE
  370. .PP
  371. \fBUPDATE_REFERENCE_HREF "update:reference:href"\fR
  372. .RS 4
  373. The URL of the reference\&.
  374. .RE
  375. .PP
  376. \fBUPDATE_REFERENCE_ID "update:reference:id"\fR
  377. .RS 4
  378. The identification string of the reference, e\&.g\&. the bug number\&.
  379. .RE
  380. .PP
  381. \fBUPDATE_REFERENCE_TITLE "update:reference:title"\fR
  382. .RS 4
  383. The title of the reference, e\&.g\&. the bug summary\&.
  384. .RE
  385. .PP
  386. \fBPRODUCT_REFERENCEFILE "product:referencefile"\fR
  387. .RS 4
  388. The basename of the product file in the package\&.
  389. .RE
  390. .PP
  391. \fBPRODUCT_SHORTLABEL "product:shortlabel"\fR
  392. .RS 4
  393. An identification string of the product\&.
  394. .RE
  395. .PP
  396. \fBPRODUCT_DISTPRODUCT "product:distproduct"\fR
  397. .RS 4
  398. Obsolete, do not use\&. Was a SUSE Code\-10 product name\&.
  399. .RE
  400. .PP
  401. \fBPRODUCT_DISTVERSION "product:distversion"\fR
  402. .RS 4
  403. Obsolete, do not use\&. Was a SUSE Code\-10 product version\&.
  404. .RE
  405. .PP
  406. \fBPRODUCT_TYPE "product:type"\fR
  407. .RS 4
  408. The type of the product, e\&.g\&. \(lqbase\(rq\&.
  409. .RE
  410. .PP
  411. \fBPRODUCT_URL "product:url"\fR
  412. .RS 4
  413. An array of product URLs\&.
  414. .RE
  415. .PP
  416. \fBPRODUCT_URL_TYPE "product:url:type"\fR
  417. .RS 4
  418. An array of product URL types\&.
  419. .RE
  420. .PP
  421. \fBPRODUCT_FLAGS "product:flags"\fR
  422. .RS 4
  423. An array of product flags\&.
  424. .RE
  425. .PP
  426. \fBPRODUCT_PRODUCTLINE "product:productline"\fR
  427. .RS 4
  428. A product line string used for product registering\&.
  429. .RE
  430. .PP
  431. \fBPRODUCT_REGISTER_TARGET "product:regtarget"\fR
  432. .RS 4
  433. A target for product registering\&.
  434. .RE
  435. .PP
  436. \fBPRODUCT_REGISTER_RELEASE "product:regrelease"\fR
  437. .RS 4
  438. A release string for product registering\&.
  439. .RE
  440. .PP
  441. \fBPUBKEY_KEYID "pubkey:keyid"\fR
  442. .RS 4
  443. The keyid of a pubkey, consisting of 8 bytes in hex\&.
  444. .RE
  445. .PP
  446. \fBPUBKEY_FINGERPRINT "pubkey:fingerprint"\fR
  447. .RS 4
  448. The fingerprint of a pubkey, usually a sha1sum in hex\&. Old V3 RSA keys use a md5sum instead\&.
  449. .RE
  450. .PP
  451. \fBPUBKEY_EXPIRES "pubkey:expires"\fR
  452. .RS 4
  453. The seconds since the unix epoch when the pubkey expires\&.
  454. .RE
  455. .PP
  456. \fBPUBKEY_SUBKEYOF "pubkey:subkeyof"\fR
  457. .RS 4
  458. The keyid of the master pubkey for subkeys\&.
  459. .RE
  460. .PP
  461. \fBPUBKEY_DATA "pubkey:data"\fR
  462. .RS 4
  463. The MPI data of the pubkey\&.
  464. .RE
  465. .PP
  466. \fBSOLVABLE_ISVISIBLE "solvable:isvisible"\fR
  467. .RS 4
  468. An attribute describing if the package should be listed to the user or not\&. Used for SUSE patterns\&.
  469. .RE
  470. .PP
  471. \fBSOLVABLE_CATEGORY "solvable:category"\fR
  472. .RS 4
  473. The category of a pattern\&.
  474. .RE
  475. .PP
  476. \fBSOLVABLE_INCLUDES "solvable:includes"\fR
  477. .RS 4
  478. A list of other patterns that this pattern includes\&.
  479. .RE
  480. .PP
  481. \fBSOLVABLE_EXTENDS "solvable:extends"\fR
  482. .RS 4
  483. A list of other patterns that this pattern extends\&.
  484. .RE
  485. .PP
  486. \fBSOLVABLE_ICON "solvable:icon"\fR
  487. .RS 4
  488. The icon name of a pattern\&.
  489. .RE
  490. .PP
  491. \fBSOLVABLE_ORDER "solvable:order"\fR
  492. .RS 4
  493. An ordering clue of a pattern\&.
  494. .RE
  495. .PP
  496. \fBSUSETAGS_SHARE_NAME "susetags:share:name"\fR
  497. .RS 4
  498. Internal attribute to implement susetags shared records\&. Holds the name of the solvable used for sharing attributes\&.
  499. .RE
  500. .PP
  501. \fBSUSETAGS_SHARE_EVR "susetags:share:evr"\fR
  502. .RS 4
  503. Internal attribute to implement susetags shared records\&. Holds the version of the solvable used for sharing attributes\&.
  504. .RE
  505. .PP
  506. \fBSUSETAGS_SHARE_ARCH "susetags:share:arch"\fR
  507. .RS 4
  508. Internal attribute to implement susetags shared records\&. Holds the architecture of the solvable used for sharing attributes\&.
  509. .RE
  510. .SH "SOLVABLE ARCHITECTURES"
  511. .sp
  512. Predefined architecture values for commonly used architectures\&.
  513. .PP
  514. \fBARCH_SRC "src"\fR
  515. .RS 4
  516. Used for binary packages that contain the package sources\&.
  517. .RE
  518. .PP
  519. \fBARCH_NOSRC "nosrc"\fR
  520. .RS 4
  521. Used for binary packages that contain some of the package sources, but not all files (because of restrictions)\&.
  522. .RE
  523. .PP
  524. \fBARCH_NOARCH "noarch"\fR
  525. .RS 4
  526. This package can be installed on any architecture\&. Used for rpm\&.
  527. .RE
  528. .PP
  529. \fBARCH_ALL "all"\fR
  530. .RS 4
  531. This package can be installed on any architecture\&. Used for Debian\&.
  532. .RE
  533. .PP
  534. \fBARCH_ANY "any"\fR
  535. .RS 4
  536. This package can be installed on any architecture\&. Used for Archlinux and Haiku\&.
  537. .RE
  538. .SH "DEPENDENCY IDS"
  539. .sp
  540. Namespaces are special modifiers that change the meaning of a dependency\&. Namespace dependencies are created with the REL_NAMESPACE flag\&. To make custom namespaces work you have to implement a namespace callback function\&.
  541. .sp
  542. The dependency markers partition the dependency array in two parts with different semantics\&.
  543. .PP
  544. \fBNAMESPACE_MODALIAS "namespace:modalias"\fR
  545. .RS 4
  546. The dependency is a special modalias dependency that matches installed hardware\&.
  547. .RE
  548. .PP
  549. \fBNAMESPACE_SPLITPROVIDES "namespace:splitprovides"\fR
  550. .RS 4
  551. The dependency is a special splitprovides dependency used to implement updates that include a package split\&. A splitprovides dependency contains a filename and a package name, it is matched if a package with the provided package name is installed that contains the filename\&. This namespace is implemented in libsolv, so you do not need a callback\&.
  552. .RE
  553. .PP
  554. \fBNAMESPACE_LANGUAGE "namespace:language"\fR
  555. .RS 4
  556. The dependency describes a language\&. The callback should return true if the language was selected by the user\&.
  557. .RE
  558. .PP
  559. \fBNAMESPACE_FILESYSTEM "namespace:filesystem"\fR
  560. .RS 4
  561. The dependency describes a filesystem\&. The callback should return true if the filesystem is needed\&.
  562. .RE
  563. .PP
  564. \fBNAMESPACE_OTHERPROVIDERS "namespace:otherproviders"\fR
  565. .RS 4
  566. This is a hack to allow self\-conflicting packages\&. It is not needed with current rpm version, so do not use this namespace\&.
  567. .RE
  568. .PP
  569. \fBSOLVABLE_PREREQMARKER "solvable:prereqmarker"\fR
  570. .RS 4
  571. This marker partitions the normal require dependencies from the prerequires\&. It is not needed for dependency solving, but it is used by the transaction ordering algorithm when a dependency cycle needs to be broken (non\-prereq deps get broken first)\&.
  572. .RE
  573. .PP
  574. \fBSOLVABLE_FILEMARKER "solvable:filemarker"\fR
  575. .RS 4
  576. This marker partitions the package provides dependencies from the synthetic file provides dependencies added by pool_addfileprovides()\&.
  577. .RE
  578. .SH "DATA TYPES"
  579. .sp
  580. Each attribute data is stored with a type, so that the lookup functions know how to interpret the data\&. The following types are available:
  581. .PP
  582. \fBREPOKEY_TYPE_VOID "repokey:type:void"\fR
  583. .RS 4
  584. No data is stored with this attribute\&. Thus you can only test if the attribute exists or not\&. Useful to store boolean values\&.
  585. .RE
  586. .PP
  587. \fBREPOKEY_TYPE_CONSTANT "repokey:type:constant"\fR
  588. .RS 4
  589. The data is a constant 32bit number\&. The number is stored in the key area, so using it does not cost extra storage space (but you need the extra key space)\&.
  590. .RE
  591. .PP
  592. \fBREPOKEY_TYPE_CONSTANTID "repokey:type:constantid"\fR
  593. .RS 4
  594. The data is a constant Id\&. The Id is stored in the key area, so using it does not cost extra storage space (but you need the extra key space)\&.
  595. .RE
  596. .PP
  597. \fBREPOKEY_TYPE_ID "repokey:type:id"\fR
  598. .RS 4
  599. The data is an Id\&.
  600. .RE
  601. .PP
  602. \fBREPOKEY_TYPE_NUM "repokey:type:num"\fR
  603. .RS 4
  604. The data is an unsigned 64bit number\&.
  605. .RE
  606. .PP
  607. \fBREPOKEY_TYPE_U32 "repokey:type:num32"\fR
  608. .RS 4
  609. The data is an unsigned 32bit number\&. Obsolete, do not use\&.
  610. .RE
  611. .PP
  612. \fBREPOKEY_TYPE_DIR "repokey:type:dir"\fR
  613. .RS 4
  614. The data is an Id of a directory\&.
  615. .RE
  616. .PP
  617. \fBREPOKEY_TYPE_STR "repokey:type:str"\fR
  618. .RS 4
  619. The data is a regular string\&.
  620. .RE
  621. .PP
  622. \fBREPOKEY_TYPE_BINARY "repokey:type:binary"\fR
  623. .RS 4
  624. The data is a binary blob\&.
  625. .RE
  626. .PP
  627. \fBREPOKEY_TYPE_IDARRAY "repokey:type:idarray"\fR
  628. .RS 4
  629. The data is an array of non\-zero Ids\&.
  630. .RE
  631. .PP
  632. \fBREPOKEY_TYPE_REL_IDARRAY "repokey:type:relidarray"\fR
  633. .RS 4
  634. The data is an array of non\-zero Ids ordered so that it needs less space\&.
  635. .RE
  636. .PP
  637. \fBREPOKEY_TYPE_DIRSTRARRAY "repokey:type:dirstrarray"\fR
  638. .RS 4
  639. The data is a tuple consisting of a directory Id and a basename\&. Used to store file names\&.
  640. .RE
  641. .PP
  642. \fBREPOKEY_TYPE_DIRNUMNUMARRAY "repokey:type:dirnumnumarray"\fR
  643. .RS 4
  644. The data is a triple consisting of a directory Id and two 32bit unsigned integers\&. Used to store disk usage information\&.
  645. .RE
  646. .PP
  647. \fBREPOKEY_TYPE_MD5 "repokey:type:md5"\fR
  648. .RS 4
  649. The data is a binary md5sum\&.
  650. .RE
  651. .PP
  652. \fBREPOKEY_TYPE_SHA1 "repokey:type:sha1"\fR
  653. .RS 4
  654. The data is a binary sha1sum\&.
  655. .RE
  656. .PP
  657. \fBREPOKEY_TYPE_SHA256 "repokey:type:sha256"\fR
  658. .RS 4
  659. The data is a binary sha256sum\&.
  660. .RE
  661. .PP
  662. \fBREPOKEY_TYPE_FIXARRAY "repokey:type:fixarray"\fR
  663. .RS 4
  664. The data is an array of structures that have all the same layout (i\&.e\&. the same keynames and keytypes in the same order)\&.
  665. .RE
  666. .PP
  667. \fBREPOKEY_TYPE_FLEXARRAY "repokey:type:flexarray"\fR
  668. .RS 4
  669. The data is an array of structures that have a different layout\&.
  670. .RE
  671. .PP
  672. \fBREPOKEY_TYPE_DELETED "repokey:type:deleted"\fR
  673. .RS 4
  674. The data does not exist\&. Used to mark an attribute that was deleted\&.
  675. .RE
  676. .SH "REPOSITORY METADATA"
  677. .sp
  678. This attributes contain meta information about the repository\&.
  679. .PP
  680. \fBREPOSITORY_SOLVABLES "repository:solvables"\fR
  681. .RS 4
  682. This attribute holds the array including all of the solvables\&. It is only used in the on\-disk solv files, internally the solvables are stored in the pool\(cqs solvable array for fast access\&.
  683. .RE
  684. .PP
  685. \fBREPOSITORY_DELTAINFO "repository:deltainfo"\fR
  686. .RS 4
  687. This attribute holds the array including all of the delta packages\&.
  688. .RE
  689. .PP
  690. \fBREPOSITORY_EXTERNAL "repository:external"\fR
  691. .RS 4
  692. This attribute holds the array including all of the data to construct stub repodata areas to support on\-demand loading of metadata\&.
  693. .RE
  694. .PP
  695. \fBREPOSITORY_KEYS "repository:keys"\fR
  696. .RS 4
  697. This should really be named "repository:external:keys", it contains an array if Ids that consists of (keyname, keytype) pairs that describe the keys of the stub\&.
  698. .RE
  699. .PP
  700. \fBREPOSITORY_LOCATION "repository:location"\fR
  701. .RS 4
  702. This is used to provide a file name in the stub\&.
  703. .RE
  704. .PP
  705. \fBREPOSITORY_ADDEDFILEPROVIDES "repository:addedfileprovides"\fR
  706. .RS 4
  707. This attribute holds an array of filename Ids, that tell the library, that all of the Ids were already added to the solvable provides\&.
  708. .RE
  709. .PP
  710. \fBREPOSITORY_RPMDBCOOKIE "repository:rpmdbcookie"\fR
  711. .RS 4
  712. An attribute that stores a sha256sum over the file stats of the Packages database\&. It\(cqs used to detect rebuilds of the database, as in that case the database Ids of every package are newly distributed\&.
  713. .RE
  714. .PP
  715. \fBREPOSITORY_TIMESTAMP "repository:timestamp"\fR
  716. .RS 4
  717. The seconds since the unix epoch when the repository was created\&.
  718. .RE
  719. .PP
  720. \fBREPOSITORY_EXPIRE "repository:expire"\fR
  721. .RS 4
  722. The seconds after the timestamp when the repository will expire\&.
  723. .RE
  724. .PP
  725. \fBREPOSITORY_UPDATES "repository:updates"\fR
  726. .RS 4
  727. An array of structures describing what this repository updates\&.
  728. .RE
  729. .PP
  730. \fBREPOSITORY_DISTROS "repository:distros"\fR
  731. .RS 4
  732. Also an array of structures describing what this repository updates\&. Seems to be the newer name of REPOSITORY_UPDATES\&.
  733. .RE
  734. .PP
  735. \fBREPOSITORY_PRODUCT_LABEL "repository:product:label"\fR
  736. .RS 4
  737. Should really be called "repository:updates:label"\&. What distribution is updated with this repository\&.
  738. .RE
  739. .PP
  740. \fBREPOSITORY_PRODUCT_CPEID "repository:product:cpeid"\fR
  741. .RS 4
  742. The cpeid of the platform updated by this repository\&. Is both used in REPOSITORY_UPDATES and REPOSITORY_DISTROS to maximize confusion\&.
  743. .RE
  744. .PP
  745. \fBREPOSITORY_REPOID "repository:repoid"\fR
  746. .RS 4
  747. An array of Id strings describing keywords/tags about the repository itself\&.
  748. .RE
  749. .PP
  750. \fBREPOSITORY_KEYWORDS "repository:keywords"\fR
  751. .RS 4
  752. An array of Id strings describing keywords/tags about the content of the repository\&.
  753. .RE
  754. .PP
  755. \fBREPOSITORY_REVISION "repository:revision"\fR
  756. .RS 4
  757. An arbitrary string describing the revision of the repository\&.
  758. .RE
  759. .PP
  760. \fBREPOSITORY_TOOLVERSION "repository:toolversion"\fR
  761. .RS 4
  762. Some string describing somewhat the version of libsolv used to create the solv file\&.
  763. .RE
  764. .SH "REPOSITORY METADATA FOR SUSETAGS REPOS"
  765. .sp
  766. Attributes describing repository files in a susetags repository\&. \fBSUSETAGS_DATADIR "susetags:datadir"\fR:: The directory that contains the packages\&.
  767. .PP
  768. \fBSUSETAGS_DESCRDIR "susetags:descrdir"\fR
  769. .RS 4
  770. The directory that contains the repository file resources\&.
  771. .RE
  772. .PP
  773. \fBSUSETAGS_DEFAULTVENDOR "susetags:defaultvendor"\fR
  774. .RS 4
  775. The default vendor used when a package does not specify a vendor\&.
  776. .RE
  777. .PP
  778. \fBSUSETAGS_FILE "susetags:file"\fR
  779. .RS 4
  780. An array of file resources of the repository\&.
  781. .RE
  782. .PP
  783. \fBSUSETAGS_FILE_NAME "susetags:file:name"\fR
  784. .RS 4
  785. The filename of the resource\&.
  786. .RE
  787. .PP
  788. \fBSUSETAGS_FILE_TYPE "susetags:file:type"\fR
  789. .RS 4
  790. The type of the resource, e\&.g\&. \(lqMETA\(rq\&.
  791. .RE
  792. .PP
  793. \fBSUSETAGS_FILE_CHECKSUM "susetags:file:checksum"\fR
  794. .RS 4
  795. The file checksum of the resource\&.
  796. .RE
  797. .SH "REPOSITORY METADATA FOR RPMMD REPOS"
  798. .PP
  799. \fBREPOSITORY_REPOMD "repository:repomd"\fR
  800. .RS 4
  801. An array of file resources of the repository\&.
  802. .RE
  803. .PP
  804. \fBREPOSITORY_REPOMD_TYPE "repository:repomd:type"\fR
  805. .RS 4
  806. The type of the resource, e\&.g\&. \(lqprimary\(rq\&.
  807. .RE
  808. .PP
  809. \fBREPOSITORY_REPOMD_LOCATION "repository:repomd:location"\fR
  810. .RS 4
  811. The location (aka filename) of the resource
  812. .RE
  813. .PP
  814. \fBREPOSITORY_REPOMD_TIMESTAMP "repository:repomd:timestamp"\fR
  815. .RS 4
  816. The seconds since the unix epoch when the resource was created\&.
  817. .RE
  818. .PP
  819. \fBREPOSITORY_REPOMD_CHECKSUM "repository:repomd:checksum"\fR
  820. .RS 4
  821. The file checksum of the resource\&.
  822. .RE
  823. .PP
  824. \fBREPOSITORY_REPOMD_OPENCHECKSUM "repository:repomd:openchecksum"\fR
  825. .RS 4
  826. The checksum over the uncompressed contents of the resource\&.
  827. .RE
  828. .PP
  829. \fBREPOSITORY_REPOMD_SIZE "repository:repomd:size"\fR
  830. .RS 4
  831. The size of the resource file\&.
  832. .RE
  833. .SH "DELTA PACKAGE ATTRIBUTES"
  834. .PP
  835. \fBDELTA_PACKAGE_NAME "delta:pkgname"\fR
  836. .RS 4
  837. The target package name for the delta package\&. Applying the delta will recreate the target package\&.
  838. .RE
  839. .PP
  840. \fBDELTA_PACKAGE_EVR "delta:pkgevr"\fR
  841. .RS 4
  842. The version of the target package\&.
  843. .RE
  844. .PP
  845. \fBDELTA_PACKAGE_ARCH "delta:pkgarch"\fR
  846. .RS 4
  847. The architecture of the target package\&.
  848. .RE
  849. .PP
  850. \fBDELTA_LOCATION_DIR "delta:locdir"\fR
  851. .RS 4
  852. The directory in the repository that contains the delta package\&.
  853. .RE
  854. .PP
  855. \fBDELTA_LOCATION_NAME "delta:locname"\fR
  856. .RS 4
  857. The first part of the file name of the delta package\&.
  858. .RE
  859. .PP
  860. \fBDELTA_LOCATION_EVR "delta:locevr"\fR
  861. .RS 4
  862. The version part of the file name of the delta package\&.
  863. .RE
  864. .PP
  865. \fBDELTA_LOCATION_SUFFIX "delta:locsuffix"\fR
  866. .RS 4
  867. The suffix part of the file name of the delta package\&.
  868. .RE
  869. .PP
  870. \fBDELTA_LOCATION_BASE "delta:locbase"\fR
  871. .RS 4
  872. This attribute can be used to overwrite the repositories base url for the delta\&.
  873. .RE
  874. .PP
  875. \fBDELTA_DOWNLOADSIZE "delta:downloadsize"\fR
  876. .RS 4
  877. The size of the delta rpm file\&.
  878. .RE
  879. .PP
  880. \fBDELTA_CHECKSUM "delta:checksum"\fR
  881. .RS 4
  882. The checksum of the delta rpm file\&.
  883. .RE
  884. .PP
  885. \fBDELTA_BASE_EVR "delta:baseevr"\fR
  886. .RS 4
  887. The version of the package the delta was built against\&.
  888. .RE
  889. .PP
  890. \fBDELTA_SEQ_NAME "delta:seqname"\fR
  891. .RS 4
  892. The first part of the delta sequence, the base package name\&.
  893. .RE
  894. .PP
  895. \fBDELTA_SEQ_EVR "delta:seqevr"\fR
  896. .RS 4
  897. The evr part of the delta sequence, the base package evr\&. Identical to the DELTA_BASE_EVR attribute\&.
  898. .RE
  899. .PP
  900. \fBDELTA_SEQ_NUM "delta:seqnum"\fR
  901. .RS 4
  902. The last part of the delta sequence, the content selection string\&.
  903. .RE
  904. .SH "AUTHOR"
  905. .sp
  906. Michael Schroeder <mls@suse\&.de>