Store license information for packages
And display this on the package page. This uses a couple of new tables, and an additional field in the package_metadata table. Currently, the order of the licenses in the package definition isn't stored, as I'm not sure the order in the list is significant.
This commit is contained in:
parent
28c2d46081
commit
16799a34a9
12 changed files with 393 additions and 16 deletions
27
sqitch/deploy/license_support.sql
Normal file
27
sqitch/deploy/license_support.sql
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
-- Deploy guix-data-service:license_support to pg
|
||||
|
||||
BEGIN;
|
||||
|
||||
CREATE TABLE licenses (
|
||||
id integer NOT NULL GENERATED ALWAYS AS IDENTITY,
|
||||
name character varying NOT NULL,
|
||||
uri character varying,
|
||||
comment character varying,
|
||||
PRIMARY KEY(id),
|
||||
UNIQUE (name, uri, comment)
|
||||
);
|
||||
|
||||
CREATE TABLE license_sets (
|
||||
id integer GENERATED ALWAYS AS IDENTITY,
|
||||
license_ids integer[] NOT NULL,
|
||||
PRIMARY KEY(license_ids),
|
||||
UNIQUE (id)
|
||||
);
|
||||
|
||||
ALTER TABLE package_metadata ADD COLUMN license_set_id integer REFERENCES license_sets(id);
|
||||
|
||||
ALTER TABLE package_metadata DROP CONSTRAINT synopsis_description_home_page_location_id;
|
||||
|
||||
ALTER TABLE package_metadata ADD CONSTRAINT package_metadata_unique_fields UNIQUE (synopsis, description, home_page, location_id, license_set_id);
|
||||
|
||||
COMMIT;
|
||||
Loading…
Add table
Add a link
Reference in a new issue